C の getchar 関数
C ゲットチャー は、標準入力から 1 つの入力文字を受け取る標準ライブラリ関数です。 getchar と getc の主な違いは、getc は任意の入力ストリームから入力を取得できるのに対し、getchar は単一の標準入力ストリームから入力を取得できることです。
- 内部で定義されています ヘッダファイル。
- getchar と同様に、標準出力ストリームに 1 文字だけを出力する putchar という関数もあります。
C の getchar() の構文
int getchar (void);
getchar() 関数はパラメータを受け取りません。
戻り値
- 標準入力からの入力は unsigned char として読み取られ、型キャストされて整数値 (int) として返されます。
- EOF は 2 つの場合に返されます。
- ファイルの終わりに達したとき
- 実行時にエラーが発生した場合
C の getchar 関数の例
次の C プログラムは、getchar() 関数の使用法を示しています。
例 1: getchar() 関数を使用して 1 文字を読み取ります。
以下は、単一文字を読み取る getchar() 関数を実装する C プログラムです。
C
// C program to implement getchar()> // function to read single character> #include> // Driver code> int> main()> {> > int> character;> > character => getchar> ();> > printf> (> 'The entered character is : %c'> , character);> > return> 0;> }> |
入力
f
出力
The entered character is : f
例 2: Putchar の実装
以下は、ユーザーが入力した文字を出力するために putchar を実装する C プログラムです。
C
// C program to implement putchar> // to print the character entered> // by user> #include> // Driver code> int> main()> {> > int> character;> > printf> (> 'Enter any random character between a-z: '> );> > character => getchar> ();> > printf> (> 'The entered character is : '> );> > putchar> (character);> > return> 0;> }> |
入力
Enter any random character between a-z: k
出力
The entered character is : k
例 3: getchar() を使用して複数の文字を読み取る
以下は、getchar() を使用して複数の文字を読み取る C プログラムです。
C
// C program to read multiple characters> // using getchar():> #include> // Driver code> int> main()> {> > int> s = 13;> > int> x;> > while> (s--) {> > x => getchar> ();> > putchar> (x);> > }> > return> 0;> }> |
入力
geeksforgeeks
出力
geeksforgeeks
例 4: getchar() 関数と do-while ループを使用して文章を読み取ります。
以下は、do-while ループを使用して文字を読み取る C プログラムです。
C
// C program to read characters using> // getchar() and do-while loop> #include> #include> // Driver code> int> main()> {> > int> ch, i = 0;> > char> str[150];> > printf> (> 'Enter the characters
'> );> > do> {> > // takes character, number, etc> > // from the user> > ch => getchar> ();> > // store the ch into str[i]> > str[i] = ch;> > // increment loop by 1> > i++;> > // ch is not equal to '
'> > }> while> (ch !=> '
'> );> > printf> (> 'Entered characters are %s '> , str);> > return> 0;> }> |
入力
Enter the characters Welcome to techcodeview.com
出力
Entered characters are Welcome to techcodeview.com