我在使用Unix中的C语言进行系统编程时理解这段代码时遇到了问题。
#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
#include <errno.h>
#include <unistd.h>
int main()
{
pid_t pid;
pid=fork();
if( pid > 0)
{
/* parent */
for( int i=0; i<1000 ;i++)
{
printf("\t\t Parent %d \n",i);
}
}
else
{
/*child */
for(int i=0; i<1000 ;i++)
{
printf("Child %d \n",i);
}
}
return 0;
}
当我执行它时,它开始将父级1打印到60,这意味着pid> 0,那么为什么它不打印父级直到999?
它在孩子和父母之间切换。