Je m'intéresse au traitement du signal et je me demandais si il était possible de donner à un signal l'utilisation d'une procédure, sous la forme :
void maProcedure(void)
car un
signal(SIGINT, maProcedure)
me donne comme erreur passing argument 2 of ‘signal’ from incompatible pointer type, ce qui est normal.
Pourtant, je pense qu'il est possible d'affecter à un signal autre chose qu'un void action(int) ?
Merci pour votre aide :)
# Titre trompeur
Posté par Pascal Terjan (site web personnel) . Évalué à 4.
A part ça, non ce n'est pas possible de mettre autre chose dans la mesure ou signal n'a aucune idée de la signature de ta fonction (il va juste avoir son adresse).
Ta fonction sera appelée avec un int en parametre, donc il faut que tu donnes une fonction qui prend ce int en parametre, quitte à ne pas l'utiliser.
# Rep
Posté par Animatrix . Évalué à 1.
EN fait, je crée un
static void traitement (int i)
maProcedure;
et je fais un
signal(SIGINT, traitement)
Merci pour l'aide :)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.