C語(yǔ)言 庫(kù)函數(shù) fflush()

C語(yǔ)言 庫(kù)函數(shù) fflush()

C語(yǔ)言 標(biāo)準(zhǔn)庫(kù) - <stdio.h>C語(yǔ)言 標(biāo)準(zhǔn)庫(kù) - <stdio.h>

C 庫(kù)函數(shù) int fflush(FILE *stream) 刷新流 stream 的輸出緩沖區(qū)。

 

1. 聲明

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

int fflush(FILE *stream)

 

2. 參數(shù)

  • stream -- 這是指向 FILE 對(duì)象的指針,該 FILE 對(duì)象指定了一個(gè)緩沖流。

 

3. 返回值

如果成功,該函數(shù)返回零值。如果發(fā)生錯(cuò)誤,則返回 EOF,且設(shè)置錯(cuò)誤標(biāo)識(shí)符(即 feof)。

 

4. 實(shí)例

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

#include <stdio.h>
#include <string.h>

int main()
{

   char buff[1024];

   memset( buff, '\0', sizeof( buff ));

   fprintf(stdout, "啟用全緩沖\n");
   setvbuf(stdout, buff, _IOFBF, 1024);

   fprintf(stdout, "這里是 codebaoku.cn\n");
   fprintf(stdout, "該輸出將保存到 buff\n");
   fflush( stdout );

   fprintf(stdout, "這將在編程時(shí)出現(xiàn)\n");
   fprintf(stdout, "最后休眠五秒鐘\n");

   sleep(5);

   return(0);
}

讓我們編譯并運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果。在這里,程序把緩沖輸出保存到 buff,直到首次調(diào)用 fflush() 為止,然后開(kāi)始緩沖輸出,最后休眠 5 秒鐘。它會(huì)在程序結(jié)束之前,發(fā)送剩余的輸出到 STDOUT。

啟用全緩沖
這里是 codebaoku.cn
該輸出將保存到 buff
這將在編程時(shí)出現(xiàn)
最后休眠五秒鐘

C語(yǔ)言 標(biāo)準(zhǔn)庫(kù) - <stdio.h>C語(yǔ)言 標(biāo)準(zhǔn)庫(kù) - <stdio.h>

下一節(jié):C 庫(kù)函數(shù) fgetpos()

C 簡(jiǎn)介

相關(guān)文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频