2

読みやすいように大きな数字を印刷する良い方法を探しています

つまり、6000000

する必要があります

6.000.000

また

ロケールに応じて 6,000,000

アップデート

私は自分のコードで次のことを試しました(IOS上で)

char* localeSet = std::setlocale(LC_ALL, "en_US");
cout << "LOCALE AFTER :" << std::locale("").name() << endl;

localeSet は常に NILL です

そして、私はいつも「LCOALE AFTER:C」を取得します

4

1 に答える 1

0

std C++ では、次のようになります。

template < class T >
std::string Format( T number )
{
    std::stringstream ss;
    ss << number;
    const std::string num = ss.str();
    std::string result;
    const size_t size = num.size();
    for ( size_t i = 0; i < size; ++i )
    {
        if ( i % 3 == 0 && i != 0  )
            result = '.' + result;
        result = ( num[ size - 1 - i ] + result );
    }
    return result;
}

...
long x = 1234567;
std::cout << Format( x ) << std::endl;
...
于 2013-01-16T08:16:38.037 に答える