返り値は2つ、子プロセスには 0 を返す。親プロセスのには子プロセスのプロセス ID を返す。
int main(){
pid_t pid;
int fd[2];
int n;
char buf[BUFSIZ];
printf("Process: %d\n", getpid());
pid = fork();
if(pid == 0){
printf("Child Process: %d\n", getpid());
} else {
printf("Parents Process: %d\n", getpid());
printf("pid: %d\n", pid);
}
printf("EXIT: %d\n", getpid());
return 0;
}
結果
Process: 77685 Parents Process: 77685 pid: 77686 EXIT: 77685 Child Process: 77686 EXIT: 77686