输出是什么?我很困惑,它是2或3,但我不确定哪一个。你能帮忙吗?
main()
{
printf("hello\n");
if(fork() == 0)
printf("hello\n");
}
答案 0 :(得分:2)
if
语句将在分叉后进行评估,因此每个进程都会使用它自己的返回值运行它,对于子进程为零,对于父进程为非零(PID),因此会有1 {{1}在这一点上。
再加上代码顶部的第一个hello
,终端总共会有hello
个。{/ p>