C言語 キーボードからの入力を1文字取得 - stdio.h - [ getchar ]
2008.10.07 Tuesday | by LRESULT
さて、今回は標準入力の関数です。
キーボードから1文字入力を受け取るには、getchar()を使用します。
結構、お馴染みな関数です。
書式 | int getchar( void ) |
---|---|
機能 | 標準入力( キーボード )から入力された1文字を取得 |
引数 | なし |
戻り値 | 成功すると、入力された文字を返し、 失敗すると、EOF(-1)を返します。 |
※ 参考 - その他にも標準出力などがあります。
C言語 標準入出力 - stdio.h - [ stdin, stdout, stderr, stdprn, stdaux ]
標準入力( キーボード )からの入力を1文字ずつ取得し、文字数をカウントしながら 取得した文字を表示してみます。 |
---|
#include <stdio.h> int main(void) { int c; int i=0; printf( "文字を入力して下さい¥n" ); printf( "ENTERキーで確定します¥n" ); printf( "Windowsの場合、終了するにはCtrl+Z (+ENTER)を押します¥n" ); while( (c = getchar()) != EOF ){ printf( "%00d : %c¥n", i++, c ); } return 0; } |
文字を入力してください ENTERキーで確定します Windowsの場合、終了するにはCtrl+Z (+ENTER)を押します 文字数 : 入力した文字列 : : |
---|
と、表示されます。 EOF(文字列の終わり)が来るまでループで表示し続けるプログラムです。 他にも getchar()は、デバッグにも使われたりします。 ちょっとプログラムを止めたいコードの場所に、getchar()を入れとくと そこで止まってくれます。 よく出てきますし、便利な関数なので是非覚えておきましょう。 |