fork download
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <sys/wait.h>
  4. #include <stdlib.h>
  5. int main() {
  6. printf("Parent PID: %d\n", getpid());
  7. pid_t pid = fork();
  8. if (pid < 0) {
  9. printf("Fork failed!\n");
  10. exit(1);
  11. }
  12. else if (pid == 0) {
  13. printf("Child PID: %d\n", getpid());
  14. printf("Child exiting...\n");
  15. exit(0);
  16. }
  17. else {
  18. wait(NULL);
  19. printf("Parent: Child has completed.\n");
  20. }
  21. return 0;
  22. }
Success #stdin #stdout 0.01s 5292KB
stdin
Standard input is empty
stdout
Parent PID: 3808157
Child PID: 3808161
Child exiting...
Parent PID: 3808157
Parent: Child has completed.