検索

ホームページ  >  に質問  >  本文

C でノンブロッキング入力を行う方法 (標準入力にコンテンツがあるかどうかを確認する)

getchar、scanf、getch、これらはユーザーが入力しないとブロックされます。ブロックしたくない場合はどうすればよいですか?
オンラインで検索したところ、fcntl は Linux では使用できるが、Windows では使用できないことがわかりました (GetAsyncKeyState を使用してキーを確認できますが、標準入力にコンテンツがあるかどうかはわかりません)

我想大声告诉你我想大声告诉你2719日前1371

全員に返信(1)返信します

  • 伊谢尔伦

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

    windwos で利用可能な ioctl がありますが、これはファイル記述子の属性を設定するだけであり、ノンブロッキング入力の場合は、対応する API を設定する必要があります

    例を見つけましたが、それがあなたが望むものであるかどうかはわかりません

    ソケットとIOで使用されるファイル記述子は同じです。

    ノンブロックを設定

    これらはすべて Google で見つけることができます。 。

    返事
    0
  • キャンセル返事