次のコードセグメントは、最初に実行されたときにはより多くの時間(5秒)がかかり、連続した実行では時間がかかりません(250ms)。 gccを実行するための良い方法はありますか?fork()とexecvp( "gcc program.c")のどちらの方が良いでしょうか?
int pid,status;
char * argv[] = {"gcc","program.c",NULL};
if(!(pid=fork())){
execvp("gcc",argv);
}
while(pid!=wait(&status)){
//do nothing
}
確かに、より良い方法があります。 execlpを使用すると、別の配列は必要ありません。 :-) –