Provided by: manpages-ja-dev_0.5.0.0.20221215+dfsg-1_all bug

名前

       fgetc, fgets, getc, getchar, ungetc - 文字と文字列の入力

書式

       #include <stdio.h>

       int fgetc(FILE *stream);

       char *fgets(char *s, int size, FILE *stream);

       int getc(FILE *stream);

       int getchar(void);

       int ungetc(int c, FILE *stream);

説明

       fgetc()   は、  stream  から次の文字を  unsigned  char  として読み、  int にキャストして返
       す。ファイルの終わりやエラーとなった場合は EOF を返す。

       getc()  は fgetc()  と同様だが、 stream を複数回評価するマクロとして実装されているかもしれ
       ない。

       getchar()  は getc(stdin) と同じである。

       fgets()   は  stream  から最大で  size - 1 個の文字を読み込み、 s が指すバッファーに格納す
       る。読み込みは  EOF  または改行文字を読み込んだ後で停止する。   読み込まれた改行文字はバッ
       ファーに格納される。 終端のヌルバイト ('\0')  が一つバッファーの中の最後の文字の後に書き込
       まれる。

       ungetc()  は、後の read 操作で読めるように、 cunsigned char にキャストして stream に書
       き戻す。  書き戻された文字は逆順に戻される; 書き戻しとして保証されているのは、一文字だけで
       ある。

       ここで述べた関数や stdio  ライブラリの入力関数を同じ入力ストリームに対して互いに混ぜて使う
       ことができる。

       これらの処理を停止せずに行いたいときは、 unlocked_stdio(3)  を参照のこと。

返り値

       fgetc(),  getc(),  getchar()   は、文字を  unsigned char として読んで int にキャストして返
       す。ファイルの終わりやエラーの場合は EOF を返す。

       fgets() は、成功すると s を返し、エラーや  1  文字も読み込んでいないのにファイルの終わりに
       なった 場合に NULL を返す。

       ungetc()  は成功すると c を返し、エラーの場合は EOF を返す。

属性

       この節で使用されている用語の説明については、 attributes(7) を参照。

       ┌──────────────────────────┬───────────────┬─────────┐
       │インターフェース属性      │
       ├──────────────────────────┼───────────────┼─────────┤
       │fgetc(), fgets(), getc(), │ Thread safety │ MT-Safe │
       │getchar(), ungetc()       │               │         │
       └──────────────────────────┴───────────────┴─────────┘

準拠

       POSIX.1-2001, POSIX.1-2008, C89, C99.

       入力ストリームのファイルディスクリプターに対して、  stdio ライブラリの入力関数と、低レベル
       呼び出しの read(2) を混ぜて呼び出す事は勧められない。 結果がどうなるかは分からず、おそらく
       あなたの 望んでいる結果にはならないだろう。

関連項目

       read(2),   write(2),   ferror(3),  fgetwc(3),  fgetws(3),  fopen(3),  fread(3),  fseek(3),
       getline(3),  gets(3),  getwchar(3),  puts(3),  scanf(3),  ungetwc(3),   unlocked_stdio(3),
       feature_test_macros(7)

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの
       説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。