?できます任意のコードを1つ、この理解を私はcの???

R

raj_rohit10

Guest
以下に示すコードが出力のみハロー費誤るあるし、時代にハロー一括それが印刷...
この理由は何ですか罰金場合動作は、fprintfの次に午前私は追加¥¥でnを...

#は<stdio.h>含まれて
#は<unistd.h>において含まれて
int型のmain()

)中(1


fprintfの(標準出力、"ハローアウト");
fprintfの(stderrは、"ハロー)誤る";
睡眠(1);

戻り0;

コードは、この出力は、こんにちはです:上のSolaris SPARCマシン- errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello - errhello -
errhello - errhello - errhello - errhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello - outhello -
outhello - outhelloアウト
誤るerrhello - errhello - outhello outhello -中に1℃が必要である:こんにちは- outhello - errhello - outhello - ...
で答えるのおかげで、事前の
rohitラジ

 
バッファさstdoutはこれがためです。あなたが使うことにより、印刷直後にコンテンツを標準出力することができます強制的にfflush()は;

"の詳細は"man fflushは見る...

 
しかし、缶uは私を説明する理由は、この問題はstderrに発生したときに使用されますが、??

 
あなたは出力の異なる2つのいる書面にストリーム。Cはデータをそのバッファは必要がストリームしない方法によって決まります。多くの実装では、標準出力を選択でのバッファリングはバッファリングを上行およびstderr。あなたの標準は、バッファ行のバイトだする必要がある1024は、無限に長い行を1024バイト単位の出力ので、されます。注文をする場合賢明stderrの混在をしたいとstdoutを取得し、使用してfflush()をするnまたは¥¥。

 
標準バッファリングが削除されますが、コンパイルのための方法何か??

 
setbufとsetvbufを関数は、バッファリングI / Oが使用される原因とバッファbufを
割り当てられたバッファの代わりに自動的に。

ボイドsetbuf(FILE *をストリームは、char * bufを);
int型setvbufを(ファイルの*ストリーム、char *をbufに、int型、size_tのサイズ);

機能¥を使って、これらの場合は、バッファリングのタイプを変更関連付けられているストリームにファイルすることができますのバッファサイズを変更します。

 

Welcome to EDABoard.com

Sponsor

Back
Top