C 庫函數 - setbuf()
描述
C 庫函數 void setbuf(FILE *stream, char *buffer) 定義流 stream 應如何緩衝。該函數應在與流 stream 相關的檔被打開時,且還未發生任何輸入或輸出操作之前被調用一次。
聲明
下麵是 setbuf() 函數的聲明。
void setbuf(FILE *stream, char *buffer)
參數
- stream -- 這是指向 FILE 對象的指針,該 FILE 對象標識了一個打開的流。
- buffer -- 這是分配給用戶的緩衝,它的長度至少為 BUFSIZ 位元組,BUFSIZ 是一個宏常量,表示數組的長度。
返回值
該函數不返回任何值。
實例
下麵的實例演示了 setbuf() 函數的用法。
#include <stdio.h> int main() { char buf[BUFSIZ]; setbuf(stdout, buf); puts("This is zaixian"); fflush(stdout); return(0); }
讓我們編譯並運行上面的程式,這將產生以下結果。在這裏,程式在即將輸出的時候,發送輸出到 STDOUT,否則它將緩衝輸出。您也可以使用 fflush() 函數來 to 刷新輸出。
This is zaixian