スポンサーリンク

FFLUSH(3) FreeBSD ライブラリ関数マニュアル FFLUSH(3)

名称

fflush, fpurge − ストリームのフラッシュ

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <stdio.h>

int

fflush(FILE *stream);

int

fpurge(FILE *stream);

解説

fflush() 関数は、すべてのバッファされたデータを対応する出力に強制的に書込 みます。またはストリームの場合は、下層の書込み関数を用いて stream の更新 を強制的に実行します。ストリームは開いた状態のままで、この関数によって影 響は受けません。

stream 引数が NULL の場合、 fflush() は開いている すべての出力ストリーム をフラッシュします。

fpurge() 関数は、指定された stream のバッファに入っているどんな入出力も消 去します。出力ストリームの場合は、書込まれていない出力を破棄します。入力 ストリームの場合は、下層オブジェクトから読込んであり、 getc(3) で取り出さ れていない入力を破棄します。これには、 ungetc でプッシュバックされたテキ ストも含まれます。

戻り値

処理が正常に完了すると、値 0 が返されます。そうでない場合は EOF が戻さ れ、エラーを示すためにグローバル変数 errno が設定されます。

エラー

       [EBADF]

stream が開いているストリームではありません。 fflush() の場合、ストリームが書込み用に開いていません。

fflush() 関数がエラーになると、ルーチン write(2) で指定されたエラーが errno に設定されます。

関連項目

write(2), fclose(3), fopen(3), setbuf(3)

規格

fflush() 関数は、 ISO/IEC 9899:1990 (‘‘ISO C89’’) に適合しています。

FreeBSD 10.0 June 4, 1993 FreeBSD 10.0

スポンサーリンク