我用c编写了一个程序并在ubuntu中运行,主要代码如下:
int main(){
pid_t pid=fork();
if(pid==0){
printf("d");
exit(0);
}
else{
printf("a");
sleep(4);
}
}
问题是:为什么代码
sleep(4);
在printf("a");
之前运行希望有人能给我一个答案,谢谢!
最佳答案
不是的。很可能,printf()
缓冲了它的输出,直到有机会输出缓冲区(在您的情况下,当进程终止时)。