如果运行的是父进程,则返回的pid号为非负,如果为子进程,pid返回为0,在Unix系统中,父进程创建子进程之后,先运行子进程,再执行父进程
int main(){
pid_t pid;
pid=fork();//创建子进程
if(pid<0){
fprintf(stderr,"Fork Failed");
exit(-1);
}
else if(pid==0){
execlp("/bin/ls","ls",NULL);//系统调用
}
else{//父进程,父进程将会等待子进程完成
wait(NULL);//子进程完成之后才会执行下一条
printf("child Complete");
exit(0);
}
}
本文介绍了一个简单的C语言程序,该程序使用fork()系统调用来创建子进程,并通过execlp()执行/bin/ls命令。文章详细解释了父进程与子进程的执行顺序,以及如何确保父进程在子进程完成后继续执行。
146

被折叠的 条评论
为什么被折叠?



