concaténation de char et float
Bonjour,
Voilà, je voudrais lire un caractere, et s'il est différent de touche ENTER, je remplis une variable de type float avec. Le probleme est que le resultat de la concaténation est faux.
voici ce que je fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
char buf_somme[32];
char buf_touche[64];
int touche;
float fr;
do{
touche=getch();
if(touche!=ENTER){
sprintf(buf_somme,"%f",fr);
sprintf(buf_touche,"%s%c",buf_somme,touche);
sscanf(buf_touche,"%f",&fr);
}
}while(touche!=ENTER);
printf("%f",fr); |
Quelqu'un pourrait-il me dire ce qui ne vas pas s'il vous plait ?
cordialement
Re: concaténation de char et float
Bonjour,
Citation:
Envoyé par gup
Code:
1 2 3 4
|
sprintf(buf_somme,"%f",fr);
sprintf(buf_touche,"%s%c",buf_somme,touche);
sscanf(buf_touche,"%f",&fr); |
Je ne suis pas sur que ça soit la suite logique :koi:
Il ne vaut pas mieux donner une valeur à fr pour ensuite l'utiliser ?
De plus la fonction scanf est à éviter :
Saisie de données par un opérateur (stdin)
La fonction scanf démystifiée