bonjour a tous,
voila, je suis entrain de faire une fonction de saisi de float.
voici son code :
le seul probleme, c'est quelle me renvoit toujours 0, donc que la conversion au niveau de strtof se passe mal alors que la chaine saisit est un reel,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 float readFloat() { float temp; char *sChaine,*sDebChaine; Booleen a; sChaine = (char *)malloc(10*sizeof(char)); do { fflush(stdin); fgets (sChaine,10, stdin); sDebChaine = sChaine; a = VRAI; while( (*sChaine!='\0') ) { if( (*sChaine>'9') && (*sChaine!='.') ) a = FAUX; sChaine++; } if( a==FAUX ) { printf("ERREUR, veuillez recommencer : "); sChaine = sDebChaine; } } while(a==FAUX); temp = strtof (sChaine,NULL); free(sDebChaine); return temp; }
quelqu'un aurait une petite idée?
Partager