conversions successives avec stringstream
Bonjour,
j'ai besoin de convertir des string en float à plusieurs reprises. Pour tester, j'ai écrit:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
std::string str_t("37.2"), str_h("14.1");
float tp1, tp2;
std::stringstream ss;
ss.str(str_t);
cout << "ss = " << ss.str() << endl;
ss >> tp1;
cout << "tp1 = " << tp1 << endl;
ss.str(str_h);
cout << "ss = " << ss.str() << endl;
ss >> tp2;
cout << "tp2 = " << tp2 << endl; |
et la réponse est:
Code:
1 2 3 4 5
|
ss = 37.2
tp1 = 37.2
ss = 14.1
tp2 = 1.95639e-38 |
La seconde fois, ss est correctement initialisé mais la conversion foire systématiquement que je le flush, l'efface avec ss.str("");
Entre deux initialisation du flus, y a t'il une manip spéciale pour bénéficier d'une conversion correcte ?
Merci.