如何用一个父进程创建多个子进程?

#include <unistd.h>  
#include <stdio.h>  
int main(void)  
{  
   int i=0;  
   printf("i son/pa ppid pid  fpid
");  
   //ppid指当前进程的父进程pid  
   //pid指当前进程的pid,  
   //fpid指fork返回给当前进程的值  
   for(i=0;i<4;i++){  
       pid_t fpid=fork();//此句执行成功后,就有两个进程(父进程和子进程)  
       if(fpid==0) //子进程执行if语句
       {
           printf("%d child  %4d %4d %4d
",i,getppid(),getpid(),fpid);  
           break;//父进程每产生一个子进程,子进程就跳出循环,这是关键部分,一定要理解
       }
       else//父进程执行else语句
       {  
           printf("%d parent %4d %4d %4d
",i,getppid(),getpid(),fpid); 
           continue;//父进程继续执行循环体,产生子进程
       } 
   }  
   return 0;  
}  
运行如图所示:


原文地址:https://www.cnblogs.com/leijiangtao/p/4503136.html