fflush

提供:cppreference.com
< cpp | io | c
移動: 案内, 検索


文法:

    #include <cstdio>
    int fflush( FILE *ストリーム );

もしも、渡されたファイルストリームが、出力ストリームだった場合には、fflush()関数は、出力バッファに溜まったデータをファイルに書き出します。

もしも、渡されたストリームが入力用のものだった場合には、fflush()の動作は未定義です。

fflush()はデバッグ時に便利です。もしもプログラムがバッファに溜まったデータをスクリーンに出力する前にセグメンテーション違反で落ちてしまうと、読むことができないのですが、fflush()を使うと解決することができます。この場合は、デバッグ出力をした直後にfflush(stdout)を呼ぶことで、出力と同時に強制的に表示することができます。

     printf( "最初の呼び出し前\n" );
     fflush( stdout );
     shady_function();
     printf( "二回目の呼び出し前\n" );
     fflush( stdout );
     dangerous_dereference();

参照: http:c-faq.com/stdio/stdinflush.html

関連トピック: fclose, fopen, fread, fpurge, fwrite, getc, putc

個人用ツール
名前空間
変種
操作
案内
ツールボックス
他の言語