FFLUSH(3)

NAME
fflush - 刷新一個流

SYNOPSIS 總覽
#include <stdio.h>

int fflush(FILE *stream);

DESCRIPTION 描述
函數 fflush 強制在所給的輸出流或更新流 stream 上，寫入在使用者空間緩沖的所有數據，使用流的底層寫功能函數。流的打開狀態不受影響。

如果參數 stream 是 NULL, fflush 刷新 所有 打開的流。

要使用非鎖定的對應版本，參見 unlocked_stdio(3) 。

RETURN VALUE 返回值
成功執行返回 0，否則返回 EOF 並設置全局變量 errno 來指示錯誤發生。

ERRORS

EBADF
    Stream 不是一個打開的流，或者不是用於輸出。

函數 fflush 也可能失敗並置 errno 為 write(2) 指定的值。

NOTES 要點
注意 fflush() 僅僅刷新使用者空間的由 C 庫提供的緩沖。要保証數據被物理地存儲到磁碟上，必須也刷新核心緩沖。例如，使用 sync(2) 或 fsync(2).

CONFORMING TO 標準參考
函數 fflush() 遵循 ANSI X3.159-1989 (``ANSI C'') 標準。

SEE ALSO 參見
fsync(2), sync(2), write(2), fclose(3), fopen(3), setbuf(3), unlocked_stdio(3)