Linux repositories inspector
GNU
2013-12-31
Aliases: fgets(3), fgets(3), fgets(3), fgets(3), fgets(3), fgets(3), getc(3), getc(3), getc(3), getc(3), getc(3), getc(3), getchar(3), getchar(3), getchar(3), getchar(3), getchar(3), getchar(3), ungetc(3), ungetc(3), ungetc(3), ungetc(3), ungetc(3), ungetc(3)

manpages-ja-dev

Japanese version of the manual pages (for developers)

man-pages-ja

Japanese man (manual) pages from the Japanese Manual Project

manpages-dev

Manual pages about using GNU/Linux for development

man-pages

Linux kernel and C library user-space interface documentation

名前

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 または改行文字を読み込んだ後で停止する。 読み込まれた改行文字はバッファーに格納される。 終端のヌルバイト (\(aq\0\(aq) が一つバッファーの中の最後の文字の後に書き込まれる。
ungetc() は、後の read 操作で読めるように、 cunsigned char にキャストして stream に書き戻す。 書き戻された文字は逆順に戻される; 書き戻しとして保証されているのは、一文字だけである。
ここで述べた関数や stdio ライブラリの入力関数を同じ入力ストリームに対して互いに混ぜて使うことができる。
これらの処理を停止せずに行いたいときは、 unlocked_stdio(3) を参照のこと。

返り値

fgetc(), getc(), getchar() は、文字を unsigned char として読んで int にキャストして返す。ファイルの終わりやエラーの場合は EOF を返す。
fgets() は、成功すると s を返し、エラーや 1 文字も読み込んでいないのにファイルの終わりになった 場合に NULL を返す。
ungetc() は成功すると c を返し、エラーの場合は EOF を返す。

準拠

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

この文書について

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

REFERENCED BY

⇧ Top