Cette opération de chaîne de caractères imprime un double en abrégé, et je n'arrive pas à comprendre pourquoi. Pourquoi cela se produit-il, et comment puis-je obtenir la sortie complète comme la première ligne de sortie?C++ Chaîne raccourcit le double lors de l'impression
string myString = "The value is ";
ss.str(""); // stringstream from ealier
ss.clear();
ss << myDouble; // Double with value 0.000014577
myString.append(ss.str());
cout << myDouble << endl;
cout << myString << endl;
$ ./myapp
0.000014577
The value is 1.4577e-05
Cela se produit parce que les paramètres de précision de '' cout' et ss' sont différents. – dasblinkenlight
Merci à tout le monde pour être si rapide avec leurs réponses, je nouveau, il me manquait quelque chose d'évident. Merci à tous :) – jwbensley
Si vous utilisez uniquement Stringstream pour la conversion, [std :: to_string] (http://en.cppreference.com/w/cpp/string/basic_string/to_string) est également utile. –