Je tente de faire en sorte que mon programme ignore Ctrl+C sous Unix, ce qui semble fonctionner, le problème est qu'il continue d'écrire "Erreur de syntaxe". Voici le code
extern "C" void ignore( int sig )
{
fprintf( stderr, "\n"); // Imprimer une nouvelle ligne
// Cette fonction ne fait rien sauf ignorer ctrl-c
}
int main()
{
// Pour ctrl-c
sigset( SIGINT, ignore );
while (1) {
getUserInput();
}
return 0;
}
À chaque fois que j'appuie sur Ctrl+C, il passe de nouveau par getUserInput, ce qui est le comportement attendu, mais il écrit également "Erreur de syntaxe". J'ai vérifié et la fonction "ignore" est bien exécutée, et une fois qu'elle a été exécutée, alors le message d'erreur est affiché, je ne suis pas sûr pourquoi.
Est-ce que quelqu'un aurait des pistes s'il vous plaît?
Merci beaucoup,
Jary