Petit problème: comment faire pour ne pas tenir compte du retour chariot d'un scanf à un autre?
Je sais que sous linux, il faut utiliser _fpurge(stdin)...mais sous Windows?
Petit problème: comment faire pour ne pas tenir compte du retour chariot d'un scanf à un autre?
Je sais que sous linux, il faut utiliser _fpurge(stdin)...mais sous Windows?
C'est portable, ca marche aussi bien sous Windows que sous Linux. Et '\n' c'est lecaractère de fin de ligne du lanage C, pas le retour chariot ('\r').
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include <stdio.h> void purge_stdin() { int c; c = getchar(); while (c != EOF && c != '\n') c = getchar(); }
Attention ! Il ne faut pas vide le buffer de stdin que s'il n'est pas vide (c'est-à-dire qu'il y a encore des caractères non lus). S'il est déjà vide, il ne faut plus appeler purge_stdin.
Merci Melem... tu geres ça marche impec!!![]()
Partager