在这个 C 程序中,我得到了我无法理解的输出。
#include <stdio.h>
int main()
{
printf("Hello World\n");
printf("%d\n", fork());
return 0;
}
它输出:
Hello World
5
Hello World
0
我的问题是,为什么它会打印“Hello World”两次?根据我的理解,它将打印“Hello World”,然后调用 fork()。
fork()是从程序开头开始吗?
最佳答案
如果您阅读了手册页,fork
会向父级和子级返回一个值。而且它并不是从程序一开始就开始的。
请查看 fork 的手册页
关于c - 为什么 fork() 会调用这个 print 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47144068/