_flushall

对于所有流;清除所有缓冲区。

int _flushall( void );

返回值

_flushall 返回打开流数 (输入和输出)。 无错误返回。

备注

默认情况下,适合文件的 _flushall 函数将所有缓冲区内容与打开输出流。 所有缓冲区与打开输入流清除它们的当前内容。 (这些缓冲区由操作系统维护通常,自动确定最佳时间将数据写入磁盘:当缓冲区已满,那么,当关闭了流,或者,当程序正常终止,而无需结束流。)

如果读取遵循调用 _flushall,新数据从输入文件读取到缓冲区中。 所有流保持打开状态。在调用后对 _flushall。

运行库的对磁盘函数可确保重要数据直接向磁盘写入而不是操作系统缓冲区。 不会复盖现有程序,可以通过链接程序的对象文件启用此功能与 Commode.obj。 在产生的可执行文件,对 _flushall 编写任何缓冲区内容保存到磁盘。 仅 _flushall 和 fflush 受 Commode.obj 的影响。

有关控件对磁盘功能的信息,请参见 流 I/Ofopen_fdopen

要求

功能

必需的头

_flushall

stdio.h

有关更多兼容性信息,请参见中介绍的 兼容性

示例

// crt_flushall.c
// This program uses _flushall
// to flush all open buffers.


#include <stdio.h>

int main( void )
{
   int numflushed;

   numflushed = _flushall();
   printf( "There were %d streams flushed\n", numflushed );
}
  

.NET Framework 等效项

请参见

参考

流I/O

_commit

fclose, _fcloseall

fflush

_flushall

setvbuf