FGETLN(3) FreeBSD ライブラリ関数マニュアル FGETLN(3)
名称
fgetln − ストリームから行を取得 |
ライブラリ
標準 C ライブラリ (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 ではじめて登場しました。 FreeBSD 10.0 April 19, 1994 FreeBSD 10.0 |