#include #include #include #include #include using namespace std; int main() { istringstream in("$1,234.56 2.22 USD 3.33"); locale mylocale(""); in.imbue(mylocale); long double v1, v2; string v3; in >> std::get_money(v1) >> std::get_money(v2) >> std::get_money(v3, true); cout << quoted(in.str()) << " parsed as: " << v1 << ' ' << v2 << ' ' << v3 << endl; in.str("$125 .99"); in.seekg(0); in >> std::get_money(v1) >> std::get_money(v2); cout << quoted(in.str()) << " parsed as: " << v1 << ' ' << v2 << endl; }