用进程相关API函数编程一个程序,使之产生一个进程扇,父进程产生一系列子进程,每个子进程打印自己的PID然后退出。要求父进程最后打印PID

#include
#include
#include 
#define N 5
//用进程相关API函数编程一个程序,使之产生一个进程扇
//父进程产生一系列子进程,每个子进程打印自己的PID然后退出。要求父进程最后打印PID。

int main()
{
    pid_t ret = -1;
    int i;
    int num = N;

    for(i=0;iif(ret < 0)
        {
            perror("fork error");
            exit(1);//结束进程
        }
        if(ret == 0)//子进程
        {
            printf("子进程pid = %d,对应的父进程pid = %d\n",getpid(),getppid());
            exit(1);//结束进程
        }   
    }
    for(i=0;i//阻塞等待任意子进程,回收子进程8kb物理内存
            wait(NULL);
        }
    printf("父进程pid = %d\n",getpid());
    return 0;
}
/*
$ ./a.out
子进程pid = 25589,对应的父进程pid = 25588
子进程pid = 25590,对应的父进程pid = 25588
子进程pid = 25593,对应的父进程pid = 25588
子进程pid = 25591,对应的父进程pid = 25588
子进程pid = 25592,对应的父进程pid = 25588
父进程pid = 25588
*/

你可能感兴趣的:(C语言程序设计)