setbuf() - C語言庫函數
C庫函數 void setbuf(FILE *stream, char *buffer) 定義如何流應該被緩衝。一旦與該流關聯的文件已經被打開,但在此之前任何輸入或輸出操作已經發生,應該調用該函數。
聲明
下麵是函數setbuf()函數的聲明。
void setbuf(FILE *stream, char *buffer)
參數
-
stream -- 這是一個文件對象標識一個開放的流指針。
-
buffer -- 這是用戶分配的緩衝區。這應該有一個長度至少為BUFSIZ個字節,這是此數組的長度被用來作為一個宏常數
返回值
該函數不返回任何值。
例子
下麵的例子顯示了函數setbuf()函數的用法。
#include <stdio.h> int main() { char buf[BUFSIZ]; setbuf(stdout, buf); puts("This is yiibai"); sleep(5); fflush(stdout); return(0); }
讓我們編譯和運行上麵的程序,這將產生以下結果。這裡的程序發送輸出到標準輸出,剛剛才弄出來,否則它保持緩衝輸出。您還可以使用fflush()函數來刷新輸出。
This is yiibai