fork download
  1. int is_terminated = 0;
  2.  
  3. void sig_handler(int signo){
  4.  
  5. printf("3");
  6.  
  7. }
  8.  
  9. main(){
  10.  
  11. int status;
  12.  
  13. signal(SIGCHLD, sig_handler);
  14.  
  15. if (fork() == 0){
  16.  
  17. is_terminated = 1;
  18.  
  19. exit(0);
  20.  
  21. }
  22.  
  23. if (is_ terminated != 1){
  24.  
  25. pause(); // waits for a signal
  26.  
  27. printf("1");
  28.  
  29. }
  30.  
  31. wait(&status);
  32.  
  33. printf("2");
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.c: In function ‘sig_handler’:
prog.c:5:1: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration]
 printf("3");
 ^
prog.c:5:1: warning: incompatible implicit declaration of built-in function ‘printf’ [enabled by default]
prog.c: At top level:
prog.c:9:1: warning: return type defaults to ‘int’ [-Wreturn-type]
 main(){
 ^
prog.c: In function ‘main’:
prog.c:13:1: warning: implicit declaration of function ‘signal’ [-Wimplicit-function-declaration]
 signal(SIGCHLD, sig_handler);
 ^
prog.c:13:8: error: ‘SIGCHLD’ undeclared (first use in this function)
 signal(SIGCHLD, sig_handler);
        ^
prog.c:13:8: note: each undeclared identifier is reported only once for each function it appears in
prog.c:15:1: warning: implicit declaration of function ‘fork’ [-Wimplicit-function-declaration]
 if (fork() == 0){
 ^
prog.c:19:1: warning: implicit declaration of function ‘exit’ [-Wimplicit-function-declaration]
 exit(0);
 ^
prog.c:19:1: warning: incompatible implicit declaration of built-in function ‘exit’ [enabled by default]
prog.c:23:5: error: ‘is_’ undeclared (first use in this function)
 if (is_ terminated != 1){
     ^
prog.c:23:9: error: expected ‘)’ before ‘terminated’
 if (is_ terminated != 1){
         ^
prog.c:25:1: warning: implicit declaration of function ‘pause’ [-Wimplicit-function-declaration]
 pause(); // waits for a signal
 ^
prog.c:27:1: warning: incompatible implicit declaration of built-in function ‘printf’ [enabled by default]
 printf("1");
 ^
prog.c:31:1: warning: implicit declaration of function ‘wait’ [-Wimplicit-function-declaration]
 wait(&status);
 ^
prog.c:33:1: warning: incompatible implicit declaration of built-in function ‘printf’ [enabled by default]
 printf("2");
 ^
prog.c:33:1: error: expected declaration or statement at end of input
prog.c:33:1: warning: control reaches end of non-void function [-Wreturn-type]
 printf("2");
 ^
stdout
Standard output is empty