スポンサーリンク

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 に設定される場 合があります。

関連項目

ferror(3), fgets(3), fopen(3), putc(3)

歴史

fgetln() 関数は、 4.4BSD ではじめて登場しました。

FreeBSD 10.0 April 19, 1994 FreeBSD 10.0

スポンサーリンク