fflush

来自cppreference.com
< c‎ | io
 
 
文件输入/输出
类型与对象
函数
文件访问
直接输入/输出
无格式输入/输出
(C95)(C95)
(C95)
(C95)(C95)
(C95)
(C95)
有格式输入
 
在标头 <stdio.h> 定义
int fflush( FILE *stream );

对于输出流(及最后操作为输出的更新流),从 stream 的缓冲区写入未写的数据到关联的输出设备。

对于输入流(及最后操作为输入的更新流),行为未定义。

stream 是空指针,则冲入所有输出流,包括操作于库包内者,或在其他情况下程序无法直接访问者。

参数

stream - 要写出的文件流

返回值

成功时返回零。否则返回 EOF 并设置文件流的错误指示器。

注意

POSIX通过定义fflush对输入流的效果扩展它的规定,只要该流还表示一个文件或另一个可定位设备:该情况下重寻位 POSIX 文件指针以匹配 C 流指针(这有效地撤销任何读缓冲),并舍弃任何尚未回读的 ungetcungetwc 的效果。

微软(Microsoft)也通过定义fflush对输入流的效果扩展它的规定:在Visual Studio 2013及以前的版本中, 放弃输入缓冲区;在Visual Studio 2015及以后的版本中,无影响并保留缓冲区.

引用

  • C11 标准(ISO/IEC 9899:2011):
  • 7.21.5.2 The fflush function (第 305 页)
  • C99 标准(ISO/IEC 9899:1999):
  • 7.19.5.2 The fflush function (第 270-271 页)
  • C89/C90 标准(ISO/IEC 9899:1990):
  • 4.9.5.2 The fflush function

参阅

打开文件
(函数)
关闭文件
(函数)