Ce programme créera un processus enfant, le processus enfant attendra un signal ALARM, lorsque ce signal arrivera après 3 secondes, la fonction f récupérera l'ID du processus parent et enverra un signal SIGINT à tuez-le, pour que l'enfant va tuer le parent après 3 secondesErreur lors de la compilation SIGALRM kill
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <string.h>
void f(int sig)
{
kill(getppid(),SIGINT);
}
main()
{
int f=fork();
if(f==0)
{
signal(SIGALRM,f);
alarm(3);
}
else
{
pause();
}
}
Je suis cette erreur:
test13.c: In function ‘main’:
test13.c:16:3: warning: passing argument 2 of ‘signal’ makes pointer from integer without a cast
/usr/include/signal.h:101:23: note: expected ‘__sighandler_t’ but argument is of type ‘int’
qu'est-ce que le stomping signifie? –
Essayez de renommer les variables comme s'il n'y a pas plusieurs choses nommées 'f' –
ah ouais ouais ... f fourche ... blablabla .. thx: D –