_flushall

すべてのストリームをフラッシュし、バッファーをすべて消去します。

int _flushall( void );

戻り値

_flushall は、開いている入出力ストリームの数を返します。 エラーの戻り値はありません。

解説

既定では、_flushall 関数は開いている出力ストリームに関連付けられたバッファーの内容をすべて、該当するファイルに書き込みます。 開いている入力ストリームに関連付けられたバッファーについては、現在の内容を消去します。 (これらのバッファーは、通常、オペレーティング システムは、データは自動的にディスクに書き込む最適なタイミングを決定します維持されます。ストリームが閉じているときは、バッファーがいっぱいになるとき、またはプログラムはストリームを閉じずに終了します。)

_flushall 呼び出しの後で読み出しを行うと、新しいデータが入力ファイルからバッファーに読み込まれます。 _flushall 呼び出しの後、ストリームはすべて開いたままです。

ランタイム ライブラリのディスクのコミット機能を使用すると、重要なデータをオペレーティング システムのバッファーではなく、ディスクに直接書き込むことができます。 プログラムのオブジェクト ファイルを Commode.obj にリンクすると、既存のプログラムを書き換えずにディスクのコミット機能を有効にできます。 この結果、生成された実行可能ファイルで _flushall が呼び出されると、バッファーの内容がすべてディスクに書き込まれます。 Commode.obj の影響を受けるのは、_flushall および fflush だけです。

ディスクのコミット機能を制御する方法については、「ストリーム入出力」、「fopen」、および「_fdopen」を参照してください。

必要条件

機能

必須ヘッダー

_flushall

<stdio.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

// 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 関数

参照

参照

ストリーム入出力

_commit

fclose、_fcloseall

fflush

_flushall

setvbuf