fflush() - C庫函數
C庫函數 int fflush(FILE *stream)流刷新輸出緩衝區。
聲明
以下是fflush() 函數的聲明。
int fflush(FILE *stream)
參數
- stream -- 這是一個文件對象,它指定了一個緩衝的流指針。
返回值
這個函數返回零值成功。如果出現錯誤,則返回EOF並設置錯誤指示燈(即feof)。
例子
下面的例子顯示 fflush() 函數的用法。
#include <stdio.h> int main() { char buff[1024]; memset( buff, '\0', sizeof( buff )); fprintf(stdout, "Going to set full buffering on
"); setvbuf(stdout, buff, _IOFBF, 1024); fprintf(stdout, "This is yiibai.com
"); fprintf(stdout, "This output will go into buff
"); fflush( stdout ); fprintf(stdout, "and this will appear when programm
"); fprintf(stdout, "will come after sleeping 5 seconds
"); sleep(5); return(0); }
讓我們編譯和運行上面的程序,這將產生以下結果。在這裏,程序保持緩衝到輸出 buff,直到它面臨的第一次調用到 fflush()後,再次開始緩衝輸出,,並最終睡5秒鐘。發送剩餘的輸出到標準輸出之前。
Going to set full buffering on
This is yiibai.com
This output will go into buff
and this will appear when programm
will come after sleeping 5 seconds