以下代码的输出是什么:
void ChildProcess(void); /* child process prototype */
void ParentProcess(void); /* parent process prototype */
int main(void)
{
pid_t pid; //stores the process ID
pid = fork(); //creates a child process of same program
if (pid == 0)
ChildProcess(); //If a child is executing a process,for it , PID will be 0
else
ParentProcess(); //The parent can have access to child process PID
return 0;
}
void ChildProcess(void)
{
for(int i=0; i< 100; i++)
cout<<"I am the child"<<endl;
}
void ParentProcess(void)
{
for(int i=0; i< 100; i++)
cout<<"I am the father"<<endl;
}
子进程和他的父打印输出在同一输出控制台(Window)上?! 我的意思是输出如下: 我是父亲 我是孩子 我是父亲 我是孩子 我是父亲 我是孩子
答案 0 :(得分:1)
是的,他们输出到同一个控制台,所以你应该得到:
I am the child
I am the father
I am the child
I am the father
I am the child
I am the father
I am the child
I am the father
...
但你也可以这样:
I am the father
I am the child
I am the child
I am the child
I am the father
I am the father
...
订单高度依赖于操作系统,机器的核心数量,并且可能非常随机。