Transformer un float en string [Résolu]

Messages postés
246
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
29 décembre 2008
- - Dernière réponse : rrk275
Messages postés
542
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
- 7 juin 2006 à 18:56
Bonjour à tous!!!


Je pense que le titre est assez explicite, je voudrais transformer une
variable de type float en string de facon à pouvoir l'ajouter à la
suite d'une autre variable string ( enfin la concatenation ne me posera
pas de probleme...)


Et je ne vois pas du tout comment faire...


La moindre idée m'interesse.


Merci d'avance.


Hasen
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
11
2
Merci
en C
<tt><tt>#include <stdio.h>
...
char buffer [50];
float f;
n=sprintf (buffer, "%f", f);

en C++
#include <sstream>
..
// créer un flux de sortie
std::ostringstream oss;
// écrire un nombre dans le flux
oss << 10.0;
// récupérer une chaîne de caractères
std::string result = oss.str();
}

</tt></tt>++

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 137 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_laurent1024
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
4
1
Merci
#include <sstream>


float value = 4.0f;

std::ostringstream oss;

oss << value;


std::string ma_string = "coucou" + oss.str();
Commenter la réponse de luhtor
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
11
1
Merci
Désolé pour la double réponse, luthor a été de 8 secondes plus rapide :)
++
Commenter la réponse de cs_laurent1024
Messages postés
246
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
29 décembre 2008
2
1
Merci
C'est tout bon, merci encore, ca marche du feu de dieu!!!!
Commenter la réponse de cs_hasen
Messages postés
542
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
0
Merci
Y a la methode un peu viellote :
#define base 10
#define precision 100000000
double nb = 2000.000200000;
char ch[101];
char decimal[20];
char flottant[15];
itoa(int(nb),decimal,base);
double Pflottante = nb-int(nb) + 1;
itoa(int(Pflottante*precision),flottant,base);
ch[0] = '\0';
strcat(ch,decimal);
strcat(ch,".");
strcat(ch,&flottant[1]);

je le fais ici avec des doubles c'est plus precis mais plus gros..

rrk275
Commenter la réponse de rrk275