怎么会输出三次父进程pid三次,子进程pid一次?
#include <stdio.h>
#include <fcntl.h>
int main()//会输出俩次父进程pid,子进程pid一次,而去掉\n 就会输出4句话,为啥!?
{
printf("program pid=%dbegins to operation\n",getpid());
int pid = fork();
printf("program pid=%dbegins to operation\n",getpid());
}
[解决办法]
if(pid==0) printf("child cource begins to operator\n");//加这个判断,一定先执行子进程,为啥?
-------------------
不是吧?
加这个判断,只能保证是子进程来执行这句话
仍然不能保证父子进程的先后顺序