Problème avec la fonction atof()

cs_programmateur Messages postés 7 Date d'inscription lundi 24 novembre 2003 Statut Membre Dernière intervention 28 mai 2006 - 16 janv. 2004 à 14:19
cs_programmateur Messages postés 7 Date d'inscription lundi 24 novembre 2003 Statut Membre Dernière intervention 28 mai 2006 - 16 janv. 2004 à 14:36
Je cherche à transformer une chaine de charactères se terminant par NULL en une valeur de type double, le type de code que j'utilise :

(sans les includes)

char nbr[30];
double nombre;

printf("Entrez la chaine à convertir : ");
gets(nbr);
nombre=atof(nbr);
printf("\\nNombre : %f",nombre);

Le problème, c'est que le nombre affiché est complètement délirant et n'a rien à voir avec la chaine transformée.
Et je me demande bien pourquoi ?

Merci de votre réponse.

PS : la fonction atoi() marche mais j'ai aussi besoin de la partie décimale du nombre et j'aimerai utiliser une fonction correcte et pas une astuce barbare.

2 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
16 janv. 2004 à 14:34
Excuse-moi BruNews mais je ne comprends pas vraiment le sens de ton message
programmateur> et ca ca te donne quoi?
printf("%f", atof("3.14"));
0
cs_programmateur Messages postés 7 Date d'inscription lundi 24 novembre 2003 Statut Membre Dernière intervention 28 mai 2006
16 janv. 2004 à 14:36
j'essai et je répond, mais je peux pas le faire tout de suite, (je ne comprends pas non plus le message de BruNews)

Programmateur.
0
Rejoignez-nous