当前位置:K88软件开发文章中心编程语言C/C++C/C++01 → 文章内容

C语言中fflush函数的使用方法

减小字体 增大字体 作者:佚名  来源:翔宇亭IT乐园  发布时间:2019-1-3 0:07:26

:2010-09-06 18:11:00

此函数包含在stdio.h头文件中,用来强制将缓冲区中的内容写入文件。

函数原型:int fflush(FILE *stream) ;

函数功能:清除一个流,即清除文件缓冲区,当文件以写方式打开时,将缓冲区内容写入文件。也就是说,对于ANSI C规定的是缓冲文件系统,函数fflush用于将缓冲区的内容输出到文件中去。

函数返回值:如果成功刷新,fflush返回0。指定的流没有缓冲区或者只读打开时也返回0值。返回EOF指出一个错误。

下面给出一个具体的例子来演示该函数使用的方法:

  #include <stdio.h>
  #include <stdlib.h>

  int main(void){
     FILE *fp;

     if((fp=fopen("test""rb"))==NULL) {
        printf("Cannot open file.\n");
        exit(1);
     }

      char ch = 'C';
      int i;
      for(i=0; i<5; i++) {
        fwrite(ch, sizeof(ch)1, fp);
        fflush(fp);
      }
      fclose(fp);
      return 0;
  }

注意:如果在写完文件后调用函数fclose关闭该文件,同样可以达到将缓冲区的内容写到文件中的目的,但是那样系统开销较大。
 



C语言中fflush函数的使用方法