C 中的 fflush() 函数
原型:
int fflush(FILE *filename);
参数:
FILE *filename
返回类型:0 或 EOF
函数的使用:
当我们处理文件处理时,我们处理流而不是处理文件。有三种类型的流stdin
(标准输入),stderr
(标准误差),stdout
(标准输出)。 fflush() 函数用于在程序每次迭代后刷新缓冲区。当我们打开一个文件进行写入操作时,调用 fflush() 函数有助于写入文件并清除流中的缓冲区。 ffiush()函数的原型是:int fflush(FILE* filename);
返回值零表示成功,返回值 EOF 表示发生了一些错误。
C 中的 fflush() 示例
#include <stdio.h>
#include <stdlib.h>
int main()
{
//Initialize the file pointer
FILE* f;
//Take a array of characters
char ch[100];
//Create the file for write operation
f = fopen("includehelp.txt", "w");
printf("Enter five strings\n");
for (int i = 0; i < 4; i++) {
//take the strings from the users
scanf("%[^\n]", &ch);
//write back to the file
fputs(ch, f);
//every time take a new line for the new entry string
fputs("\n", f);
//except for last entry.Otherwise print the last line twice
//clear the stdin stream buffer
//fflush(stdin);
//if we don't write this then after taking string
//%[^\n] is waiting for the '\n' or white space
}
//take the strings from the users
scanf("%[^\n]", &ch);
fputs(ch, f);
//close the file after write operation is over
fclose(f);
//open a file
f = fopen("includehelp.txt", "r");
printf("File content is--\n");
printf("\n...............print the strings..............\n");
while (!feof(f)) {
//takes the first 100 character in the character array
fgets(ch, 100, f);
//and print the strings
printf("%s", ch);
}
//close the file
fclose(f);
return 0;
}
输出
如果我们这里不使用 fflush() 函数。然后输出将是...
相关用法
- C语言 fread()用法及代码示例
- C语言 feof()用法及代码示例
- C语言 fillellipse()用法及代码示例
- C语言 fgets()用法及代码示例
- C语言 freopen()用法及代码示例
- C语言 frexp()用法及代码示例
- C语言 fclose()用法及代码示例
- C语言 fseek() vs rewind()用法及代码示例
- C语言 fgetc()用法及代码示例
- C语言 fputc()用法及代码示例
- C语言 fputs()用法及代码示例
- C语言 fillpoly()用法及代码示例
- C语言 ftell()用法及代码示例
- C语言 fseek()用法及代码示例
- C语言 fgets() and gets()用法及代码示例
- C语言 fscanf()用法及代码示例
- C语言 ferror()用法及代码示例
- C语言 fgetc() and fputc()用法及代码示例
- C语言 fwrite()用法及代码示例
- C语言 fork()用法及代码示例
注:本文由纯净天空筛选整理自Souvik Saha大神的英文原创作品 fflush() function in C language with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。