📅  最后修改于: 2020-09-25 08:15:48             🧑  作者: Mango
缓冲数据是在特定时间之前存储在计算机物理内存中的临时或特定于应用程序的数据。
fflush() 函数在
int fflush(FILE* stream);
如果stream
是最后一个操作已输出的输出流或更新流,则调用fflush() 函数会将所有缓冲的未写入数据写入关联的输出设备。
如果stream
是空指针,则刷新所有打开的输出流。
对于输入流和更新最后输入操作的流,此行为未定义。
fflush() 函数返回:
#include
#include
int main()
{
int x;
char buffer[1024];
setvbuf(stdout, buffer, _IOFBF, 1024);
printf("Enter an integer - ");
fflush(stdout);
scanf("%d",&x);
printf("You entered %d", x);
return(0);
}
运行该程序时,输出为:
Enter an integer - 2
You entered 2
在上面的程序中,尝试删除fflush(stdout)
并运行程序以查看fflush的效果。除非刷新,否则不会将字符串 “输入整数-“写入屏幕。