#include <stdio.h>
void main()
{
printf ("ciao");
fork();
}
私はCの最適化に関するいくつかのアイデアを持っているが、私はよく分かりません。あなたは答えを知りたいですか?
#include <stdio.h>
void main()
{
printf ("ciao");
fork();
}
私はCの最適化に関するいくつかのアイデアを持っているが、私はよく分かりません。あなたは答えを知りたいですか?
標準出力の内部バッファーが子プロセスで複製され、親プロセスと子プロセスの両方が終了すると両方のバッファーがフラッシュされるため、コードはおそらく"ciao"
を標準出力と2倍に出力します。
最適化とは無関係です。フォーク()が呼び出されたとき
、親と子プロセスの両方がそれを継承し、それゆえ、それらの両方が
プリントアウト「チャオ」彼らはバッファをフラッシュします。 fflush(stdout)を呼び出すと
フォークを呼び出す前に一度だけ印刷されます
実行しようとしましたか? – MByD
私はその質問を理解しているとは確信していません。何が印刷されるのかははっきりしています。また、mainはintを返さなければならず、fork()の機能はクリアされていません:) –
はい "ciaociao"を出力します。私の質問は、なぜこれを印刷するのかということです。 – gc5