Home C&C++函数库 c++ 语法 程序源码 Linux C库

fflush

函数  <cstdio>

int fflush ( FILE * stream );
刷新流
如果给定的流打开了写入(或者打开了更新,并且最后的i/o操作是一个输出操作), 则输出缓冲区中任何未写入的数据都会被写入文件。

如果stream是空指针,则所有这样的流都将被刷新。
在其他情况下,行为取决于特定的库实现。在某些实现中, 为读取而刷新打开的流会导致清除其输入缓冲区(但这不是可移植的预期行为)。

该流在调用后保持打开状态。

当一个文件被关闭时(无论是由于调用fclose还是由于程序终止), 与它相关的所有缓冲区都会被自动刷新。

☲  参数


stream 指向指定缓冲流的FILE对象的指针。

☉  返回值



0表示成功。
如果发生错误,则返回EOF并设置错误指示符(参见ferror)。

☣  示例



/* fflush example */
#include <stdio.h>
char mybuffer[80];
int main()
{
   FILE * pFile;
   pFile = fopen ("example.txt","r+");
   if (pFile == NULL) perror ("Error opening file");
   else {
     fputs ("test",pFile);
     fflush (pFile);    // flushing or repositioning required
     fgets (mybuffer,80,pFile);
     puts (mybuffer);
     fclose (pFile);
     return 0;
  }
}


🍄  另请参阅



fopen 打开文件(function )
fclose 关闭文件(function )
setbuf 设置流缓冲区 (function )
setvbuf 更改流缓冲区 (function )

联系我们 免责声明 关于CandCplus 网站地图