Bonsoir, j'aimerais vous poser une question sur le bout de code suivant
J'empêche donc 5 fois l'interruption du programme avant de remettre le comportement par défaut.
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 struct sigaction s2; void traitementSignal(int s) { if(i!=5) { i++; printf("Signal %d reçu\n",i); }else{ sigaction(SIGINT,&s2,NULL); } } int main() { struct sigaction s; s.sa_handler=traitementSignal; sigemptyset(&s.sa_mask); sigaction(SIGINT,&s,&s2); while(1); return 0; }
Mais, j'aime pas trop le fait de mettre une variable en global comme ça...dans mon cas s2.
Y aurait il un moyen de déclarer s2 dans le main afin de le passer en paramètre de traitementSignal ? Si oui comment le code va t'il changer au niveau des appels ?
Merci d'avance.
Partager