Cherche equivalent de fflush(stdin) pour linux
Fermé
Dosman
Messages postés
1444
Date d'inscription
mardi 1 mai 2012
Statut
Contributeur
Dernière intervention
26 septembre 2017
-
Modifié par Dosman le 28/12/2014 à 21:32
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 28 déc. 2014 à 23:59
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 28 déc. 2014 à 23:59
A voir également:
- Cherche equivalent de fflush(stdin) pour linux
- Equivalent word gratuit - Guide
- Émulateur linux ✓ - Forum Linux / Unix
- Fflush(stdin) - Forum Programmation
- Linux su - Astuces et Solutions
- 40 go internet équivalent en heure ✓ - Forum Mobile
1 réponse
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 816
28 déc. 2014 à 23:59
28 déc. 2014 à 23:59
Bonjour,
Tu peux oublier fflush(stdin); et ce, même sur windows.
fflush(stdin) a un comportement indéterminé.
Pour vider correctement, le buffer clavier, il faut faire :
(ou ton code avec ta variante fera l'affaire également).
Il faut vider le buffer lorsque c'est nécessaire. Donc, il faut l'enlever avant ton scanf().
Cdlt,
Tu peux oublier fflush(stdin); et ce, même sur windows.
fflush(stdin) a un comportement indéterminé.
Pour vider correctement, le buffer clavier, il faut faire :
int c; while ( (c=getchar()) != '\n' && c != EOF );
(ou ton code avec ta variante fera l'affaire également).
Il faut vider le buffer lorsque c'est nécessaire. Donc, il faut l'enlever avant ton scanf().
Cdlt,