- ベストアンサー
printfですぐに出力
バッファ関係の質問です。 printfの直後にprintfの内容を表示する方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#9119
回答No.2
出力先が標準出力の場合 fflush(stdout); でたまってるバッファをフラッシュする。
その他の回答 (2)
- chie65536
- ベストアンサー率41% (2512/6032)
回答No.3
出力後に fflush(stdout); を行うか、毎回fflushするのが面倒であれば、プログラムの開始直後に fflush(stdout); setbuf(stdout,NULL); を行う。
質問者
お礼
ありがとうございます。 fflush(stdout);の1行で解決しました。
noname#25358
回答No.1
質問の意味がよく分かりません。 printf は、デフォルトでは画面へ文字を出力する関数のはずですが、どうしてそれが見えないのでしょうか? 開発環境、もしくは printf の出力が見えない理由を補足してください。 パイプの出力先を変更していて printf の出力内容が直接見えない状態にあるのであれば、fprintf 関数を使って STDOUT に出力すればいいのですけど……。 fprintf(STDOUT, "%d%d%s", ... ); また、Windows の Visual C かなにかで非コンソールアプリケーションを開発していてるのであれば、Win32API の AllocConsole() 関数を使用してコンソールを開けば、printf の出力内容が見えるようになります。
お礼
ありがとうございました。