EN JA
FGETLN(3)
FGETLN(3) FreeBSD Library Functions Manual FGETLN(3)

名称

fgetlnストリームから行を取得する

ライブラリ

Standard C Library (libc, -lc)

書式

#include < stdio.h>

char *
fgetln( FILE *stream, size_t *len);

解説

fgetln() 関数は、 stream によって参照されるストリームから次の行へのポインタを返します。この行は、終了する NUL 文字で終わらないように、C の文字列では ありません。最後の改行を含む行の長さは、 len が指すメモリ位置に格納されます。 (しかしながら、行が改行で終わらないファイルの最後であるなら、返されるテキストは、改行を含まないことに注意してください。)

戻り値

成功して完了すると、ポインタが返されます。このポインタは、(成功しても成功しなくても) stream に次の I/O 操作の後に、またはストリームがクローズされるとすぐに、無効になります。そうでなければ、 NULL が返されます。 fgetln() 関数は、ファイルの終りとエラーを区別しません。どちらが生じたか判断するために、ルーチン feof(3)ferror(3) が、使用されなければなりません。エラーが生じるなら、グローバル変数 errno は、エラーを示す値に設定されます。ファイルの終りの状態は、端末でさえ、記憶され、読み込むすべての続く試みは、状態が clearerr(3) でクリアされるまで、 NULL を返します。

返されたサイズを越えて変更が行なわれないという条件で、返されたポインタが指すテキストは、修正されます。これらの変更は、ポインタが無効になるとすぐに、失われます。

エラー

[ EBADF]
引数 stream が、読み込みのためにオープンされたストリームではありません。

また、 fgetln() 関数は、失敗して、ルーチン fflush(3), malloc(3), read(2), stat(2) または realloc(3) に明記されたエラーのいずれかが errno に設定します。

歴史

fgetln() 関数は、 4.4BSD ではじめて登場しました。
April 19, 1994 FreeBSD