24,855
社区成员
发帖
与我相关
我的任务
分享
#include<stdlib.h>
#include<stdio.h>
#include<sys/wait.h>
int main()
{
pid_t pid;
if((pid=fork())<0)
printf("error");
else if(pid==0) /* child 1 */
{
if((pid=fork())<0)
printf("error");
else if(pid>0)
{
printf("hell\n");
}
sleep(2);
printf("second child,parent pid=%d\n",getppid());
exit(0);
}
if(waitpid(pid,NULL,0)!=pid)
printf("error");
exit(0);
}
#include<stdlib.h>
#include<stdio.h>
#include<sys/wait.h>
int main()
{
pid_t pid;
if((pid=fork())<0)
printf("error");
else if(pid==0) /* child 1 */
{
if((pid=fork())<0)
printf("error");
else if(pid>0)
{
exit(0);
}
sleep(2);
printf("second child,parent pid=%d\n",getppid());
exit(0);
}
if(waitpid(pid,NULL,0)!=pid)
printf("error");
exit(0);
}
else if(pid>0)
{
exit(0);
}