Namespaces
Variants

fflush

From cppreference.net
< c ‎ | io
ヘッダーで定義 <stdio.h>
int fflush ( FILE * stream ) ;

出力ストリーム(および最後の操作が出力であった更新ストリーム)に対して、 stream のバッファ内の未書き込みデータを関連付けられた出力デバイスに書き込みます。

入力ストリーム(および最後の操作が入力であった更新ストリーム)の場合、動作は未定義です。

stream がヌルポインタの場合、ライブラリパッケージ内で操作されるものやプログラムから直接アクセスできないものを含む、すべての開いている出力ストリームがフラッシュされます。

目次

パラメータ

stream - 書き出すファイルストリーム

戻り値

成功時にゼロを返します。それ以外の場合、 EOF が返され、ファイルストリームのエラーインジケータが設定されます。

注記

POSIXは fflushの仕様を拡張 しており、入力ストリームがファイルやその他のシーク可能なデバイスを表す場合にその効果を定義しています:その場合、POSIXファイルポインタはCストリームポインタに合わせて再配置され(これにより読み取りバッファリングが事実上取り消されます)、まだストリームから読み戻されていない ungetc または ungetwc の効果は破棄されます。

Microsoftはfflushの仕様を拡張し、入力ストリームに対する効果を定義しています:Visual Studio 2013以前では 入力バッファを破棄 し、Visual Studio 2015以降では 効果がなく、バッファは保持されます

参考文献

  • C23規格 (ISO/IEC 9899:2024):
  • 7.21.5.2 fflush関数 (p: TBD)
  • C17規格 (ISO/IEC 9899:2018):
  • 7.21.5.2 fflush関数 (p: TBD)
  • C11規格 (ISO/IEC 9899:2011):
  • 7.21.5.2 fflush関数 (p: 305)
  • C99規格 (ISO/IEC 9899:1999):
  • 7.19.5.2 fflush関数 (p: 270-271)
  • C89/C90標準 (ISO/IEC 9899:1990):
  • 4.9.5.2 fflush関数

関連項目

ファイルを開く
(関数)
ファイルを閉じる
(関数)