#include <unistd.h> | |
#include <sys/types.h> | |
#include <sys/wait.h> | |
#include <stdio.h> | |
int main(void) | |
{ | |
pid_t pid; | |
pid = fork (); | |
/* Sometimes child goes first (non-zero), sometimes parent (zero). This | |
printing means we can detect if we correctly get a zero result and a | |
non-zero result (--> three 'X's printed), but the output doesn't depend | |
on the order. */ | |
printf("%s", pid==0 ? "X" : "XX"); | |
if (pid != 0) | |
waitpid(pid, NULL, 0); | |
return 0; | |
} |