SYNOPSIS 总览
#include <stdio.h>
int fflush(FILE *stream);
DESCRIPTION 描述
函数 fflush 强制在所给的输出流或更新流 stream 上,写入在用户空间缓冲的所有数据,使用流的底层写功能函数。流的打开状态不受影响。
如果参数 stream 是 NULL, fflush 刷新 所有 打开的流。
要使用非锁定的对应版本,参见 unlocked_stdio(3) 。
RETURN VALUE 返回值
成功执行返回 0,否则返回 EOF 并设置全局变量 errno 来指示错误发生。
ERRORS
- EBADF
- Stream 不是一个打开的流,或者不是用于输出。
函数 fflush 也可能失败并置 errno 为 write(2) 指定的值。
NOTES 要点
注意 fflush() 仅仅刷新用户空间的由 C 库提供的缓冲。要保证数据被物理地存储到磁盘上,必须也刷新内核缓冲。例如,使用 sync(2) 或 fsync(2).