首頁  >  問答  >  主體

c++ - C語言如何非阻塞輸入(檢查 stdin 是否有內容)

getchar,scanf,getch,這些,如果使用者沒有輸入就會阻塞,如果不希望阻塞,該怎麼辦?
網路上搜了一下,Linux可以用 fcntl,但 Windows 就不行了(可以用 GetAsyncKeyState 檢查按鍵,但不能知道stdin 是否有內容)

我想大声告诉你我想大声告诉你2703 天前1356

全部回覆(1)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-06-17 09:18:16

    windwos上有ioctl可以實現,不過這只是設定檔案描述符的屬性而已,非阻塞的輸入還是要配置對應的API才行

    找到一個例子不知道是不是你想要的,socket和IO使用的檔案描述符是一樣的

    set nonblock

    這些東西都是可以穀歌出來的。 。

    回覆
    0
  • 取消回覆