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

此函数包含在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.
");
        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关闭该文件,同样可以达到将缓冲区的内容写到文件中的目的,但是那样系统开销较大。

本文来源于翔宇亭IT乐园 http://www.biye5u.com/, 原文地址:http://www.biye5u.com/article/prog/C/2010/2774.html

原文地址:https://www.cnblogs.com/lovelifelovestudy/p/4004452.html