Conversion char -> double

Résolu
cs_obby Messages postés 91 Date d'inscription vendredi 10 octobre 2003 Statut Membre Dernière intervention 12 octobre 2006 - 3 déc. 2005 à 18:22
cs_obby Messages postés 91 Date d'inscription vendredi 10 octobre 2003 Statut Membre Dernière intervention 12 octobre 2006 - 5 déc. 2005 à 08:18
Bonjour,



J'ai un petit souci, j'utilise la fonction atof() pour faire la
conversion d'une chaine de caractère (ex : ".00000E+00") vers un
double. Cependant, j'obtiens un résultat uniquement si je vais dans les
propriétés de windows et les options régionnales et que je change le
symbole décimal de "," en ".";



Sachant que je dévellope un soft avec DevCpp et Gtkmm, pour
pouvoir l'utiliser sous windows ET linux, je voudrait savoir si
quelqu'un a une solution.



Merci d'avance.



Obby
A voir également:

5 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
4 déc. 2005 à 15:20
Je crois qu'en C++ il y a d'autres fonction pour ca. Notamment, en C++ on utilise plutot un istringstream que atof:

const char* s = ".00000E+00";
std::istringstream iss(s);
double d = 0;
if(iss >> d) std::cout << d << std::endl;

Pour le fonction setlocale, elle marchait bien chez moi: après un setlocale(LC_ALL, "french"); la virgule s'affichait ',' et plus '.'
3
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
3 déc. 2005 à 20:47
Il me semble que tu peux utiliser la fonction setlocale(int, const char *) déclarée dans locale.h
Essaie de trouver des infos la dessus
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
3 déc. 2005 à 20:50
Tu codes bien en C, pas en C++?
0
cs_obby Messages postés 91 Date d'inscription vendredi 10 octobre 2003 Statut Membre Dernière intervention 12 octobre 2006
4 déc. 2005 à 15:09
non je code en C++, pourquoi?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_obby Messages postés 91 Date d'inscription vendredi 10 octobre 2003 Statut Membre Dernière intervention 12 octobre 2006
5 déc. 2005 à 08:18
Merci, setlocale() fonctionne. Reste maintenant à voir si sous linux cela va fontionner également.
0
Rejoignez-nous