j'ai a peu pres le meme soucis que fred
http://forum.hardware.fr/forum2.ph [...] subcat=440
lorsque j'utilise fgets, la fonction est ignoré, on me demande pas de taper du texte ...
j'ai alors utilisé getc(stdin);
je peux saisir mon texte, mais lorsque je me trompe une premiere fois, la deuxieme fois, j'ai à chaque fois le caractere 10 (en %d) soit la validation
donc pour valider apres avoir fais une erreur, c'est mon deuxième caractere qui est pris en compte ....
Code :
- char valeur_str[4];
- valeur_str[3] = '\0';
-
- do
- {
- printf("\n o -> oui / n -> non : " );
- getc(stdin); //si je le retire, fgets est ignoré
- fgets(valeur_str,2,stdin);
- }
- while (valeur_str[0] != 'o' && valeur_str[0] !='n');
|
je rappelle que j'ai essayé aussi avec fgetc
mais cela ne resoud pas le probleme
Code :
- char choix;
- choix = fgetc (stdin);
|