C 庫函數(shù) - setbuf()

C 標(biāo)準(zhǔn)庫 - <stdio.h> C 標(biāo)準(zhǔn)庫 - <stdio.h>

描述

C 庫函數(shù) void setbuf(FILE *stream, char *buffer) 定義流 stream 應(yīng)如何緩沖。該函數(shù)應(yīng)在與流 stream 相關(guān)的文件被打開時(shí),且還未發(fā)生任何輸入或輸出操作之前被調(diào)用一次。

聲明

下面是 setbuf() 函數(shù)的聲明。

void setbuf(FILE *stream, char *buffer)

參數(shù)

  • stream -- 這是指向 FILE 對(duì)象的指針,該 FILE 對(duì)象標(biāo)識(shí)了一個(gè)打開的流。
  • buffer -- 這是分配給用戶的緩沖,它的長(zhǎng)度至少為 BUFSIZ 字節(jié),BUFSIZ 是一個(gè)宏常量,表示數(shù)組的長(zhǎng)度。

返回值

該函數(shù)不返回任何值。

實(shí)例

下面的實(shí)例演示了 setbuf() 函數(shù)的用法。

#include <stdio.h>

int main()
{
   char buf[BUFSIZ];

   setbuf(stdout, buf);
   puts("This is w3cschool");

   fflush(stdout);
   return(0);
}

讓我們編譯并運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果。在這里,程序在即將輸出的時(shí)候,發(fā)送輸出到 STDOUT,否則它將緩沖輸出。您也可以使用 fflush() 函數(shù)來 to 刷新輸出。

This is w3cschool

C 標(biāo)準(zhǔn)庫 - <stdio.h> C 標(biāo)準(zhǔn)庫 - <stdio.h>