std::fflush
From cppreference.com
| ヘッダ <cstdio>で定義 |
||
| int fflush( std::FILE* stream ); |
||
出力ストリーム(および、直前の操作が出力であった更新ストリーム)の場合、streamのバッファにある書き込まれていないデータを、関連付けられた出力デバイスに書き込みます。
入力ストリーム(および、直前の操作が入力であった更新ストリーム)の場合、動作は未定義です。
|
出力デバイスにデータが書き込まれた場合、 |
(C++26以降) |
streamがヌルポインタの場合、上記で指定されたフラッシュ操作は、ライブラリパッケージ内で操作されているものや、プログラムから直接アクセスできないものを含む、すべてのオープンな出力ストリームに対して実行されます。
目次 |
[編集] パラメータ
| stream | - | 書き出すファイルストリーム |
[編集] 戻り値
成功した場合は 0 を返します。それ以外の場合は EOF を返し、ファイルストリームのエラーインジケータを設定します。
[編集] 注記
POSIX は、入力ストリームに対する fflush の仕様を拡張しており、そのストリームがファイルまたはその他のシーク可能なデバイスを表す場合に、その効果を定義しています。その場合、POSIX ファイルポインタは C ストリームポインタに一致するように再配置され(これにより、読み込みバッファリングが実質的に元に戻されます)、まだストリームから読み戻されていない std::ungetc または std::ungetwc の効果は破棄されます。
Microsoft も、入力ストリームに対する fflush の仕様を拡張しています。Visual Studio 2013 以前では、入力バッファを破棄しましたが、Visual Studio 2015 以降では、効果がなく、バッファは保持されます。
[編集] 関連項目
| ファイルを開く (関数) | |
| ファイルを閉じる (関数) | |
| C のドキュメント
fflush | |