Bonsoir,

Je cherche désespérement comment je peux passer un parametre depuis une fonction appelée par un signal ?
En fait, à partir du moment ou je suis dans la fonction suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
void sig_chld(int signo) 
{
    int status, child_val;
 
    switch(signo) {
        case SIGCHLD :
 
            if (waitpid(-1, &status, WNOHANG | WUNTRACED)<0)
            {
                printf("Erreur dans l'appel du wait : %s\n", strerror(errno));
                return;  
            }
 
            if (WIFEXITED(status))                /* did child exit normally? */
            {
                child_val = WEXITSTATUS(status); /* get child's exit status */
                printf("child's exited normally with status %d\n", child_val);
 
 
            }
            break;
 
 
        case SIGINT :
            printf("\nSIGINT reçu\n");
            break;
 
        case SIGTSTP :
            printf("\nSIGSTOP reçu\n");
            break;
 
    }
}
J'aimerais pouvoir appeler une autre fonction en lui passant un paramétre qui est un pointeur. Le problème c'est que je ne sais pas comment passer ce pointeur puisque je ne peux déjà pas le passer en entrée dans sig_chld ?

Merci de m'aider, je craaaaaaaaaaque