- 762 名前:デフォルトの名無しさん mailto:sage [2024/01/28(日) 11:52:43.80 ID:W0uCnQb3.net]
- 質問なのですがどんな環境(ロケール設定)のPCで動かしても
数値や時刻の入出力を修飾無し(12345 が 12,345 になったりしない)にする完璧な方法って次の3行で良い? setlocale(LC_ALL, ""); // printf()、scanf()に反映 _wsetlocale(LC_ALL, L""); // wprintf()、wscanf()に反映 (※ 環境依存。左記はWindowsの場合 std::locale::global(std::locale("", std::locale::all)); // cout、wcout、cin、wcin、ostringstream、wostringstream、...etc. C++の全部に反映 あとなんか実験する限り cout.imbue(std::locale("")); std::locale::global(std::locale("", std::locale::all)); とするとcoutが修飾有りとなり、cout.imbue()で与えた設定をstd::locale::global()が上書きしないように見えるのですがそういうもの?
|

|