#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int Fun(int num);
int Fun(int num)
{
pid_t pid;
printf("It's a father process, it will have %d children!.And the ID is %ld.\n",num,(long)getpid());
for(int i=0; i<num; i++)
{
pid = fork();
if(pid == -1)
{
perror("fork...");
return -1;
}
else if(pid == 0)
{
printf("This is a child process,the ID is:%ld.And then it's father's ID is:%ld\n",(long)getpid(),(long)getppid());
break;
}
else
{
sleep(3);
continue;
}
}
return 0;
}
int main()
{
int num;
printf("Please input the number of creating children process.\n");
scanf("%d",&num);
if(Fun(num) == -1)
{
printf("Creating failed!\n");
return -1;
}
return 0;
}
...