• ベストアンサー

標準ライブラリだけでgetch関数を作成する方法

getch関数は非常に使い勝手が良くて、キーボードから入力した文字を画面にエコーバックしませんし、エンターキーなどを押す必要もありません。 このgetch関数を標準ライブラリだけを使って作成することは可能でしょうか? ぜひよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4901/10362)
回答No.2

OS依存です。 Linuxなら、 #include <termios.h> #include <unistd.h> struct termios x; /*標準入力を1文字入力&エコー無しに*/ ch=tcgetattr(0,&x); x.c_lflag &= ~(ICANON|ECHO); ch=tcsetattr(0,TCSANOW,&x); printf("CH=%02X\n",getchar()); /*標準入力を行入力&エコー有りに*/ x.c_lflag |= (ICANON|ECHO); ch=tcsetattr(0,TCSANOW,&x);

daigakusei12345
質問者

お礼

ありがとうございます。

その他の回答 (1)

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.1

ANSIやISOで定義されているC標準ライブラリということであればできません。

daigakusei12345
質問者

お礼

そうなんですね。ありがとうございます。

関連するQ&A