Je suis en utilisant std::ostringstream pour formater une double chaîne avec un format spécifique (à l'aide de l'apostrophe comme des séparateurs de milliers). Cependant, dans certains cas, ostringstream m'a donné un résultat différent de ce que j'attendais.
Aussi loin que je peux dire, il est attendu que le code ci-dessous doit être "+01"; au lieu de cela, il renvoie "0+1". Ce que je fais mal ici, et comment puis-je obtenir le résultat dont j'ai besoin?
#include <iomanip>
#include <iostream>
#include <sstream>
int main()
{
std::ostringstream stream;
stream << std::showpos; // Always show sign
stream << std::setw(3); // Minimum 3 characters
stream << std::setfill( '0' ); // Zero-padded
stream << 1; // Expected output: "+01"
std::cout << stream.str(); // Output: "0+1"
return 0;
}