fflush
来自cppreference.com
定义于头文件 <stdio.h>
|
||
int fflush( FILE *stream ); |
||
对于输出流(及最后操作为输出的更新流),从 stream
的缓冲区写入未写的数据到关联的输出设备。
对于输入流(及最后操作为输入的更新流),行为未定义。
若 stream
是空指针,则冲入所有输出流,包括操作于库包内者,或在其他情况下程序无法直接访问者。
参数
stream | - | 要写出的文件流 |
返回值
成功时返回零。否则返回 EOF 并设置文件流的错误指示器。
注意
POSIX通过定义fflush
对输入流的效果扩展它的规定,只要该流还表示一个文件或另一个可定位设备:该情况下重寻位 POSIX 文件指针以匹配 C 流指针(这有效地撤销任何读缓冲),并舍弃任何尚未回读的 ungetc 或 ungetwc 的效果。
微软(Microsoft)也通过定义fflush
对输入流的效果扩展它的规定:在Visual Studio 2013及以前的版本中, 放弃输入缓冲区;在Visual Studio 2015及以后的版本中,无影响并保留缓冲区.
引用
- C11 标准(ISO/IEC 9899:2011):
- 7.21.5.2 The fflush function (p: 305)
- C99 标准(ISO/IEC 9899:1999):
- 7.19.5.2 The fflush function (p: 270-271)
- C89/C90 标准(ISO/IEC 9899:1990):
- 4.9.5.2 The fflush function
参阅
(C11) |
打开文件 (函数) |
关闭文件 (函数) |