よく知られているように、グローバル データは、printf() と strtod() が使用している数値の小数点に影響を与えるロケール設定のような悪です。_configthreadlocale(_ENABLE_PER_THREAD_LOCALE)
さいわい、MSVC++ 9 では、呼び出しによってスレッドごとのロケールを使用できます。残念ながら、localeconv() 関数はこれに気付かず、依然としてグローバル ロケール設定を返すようです。たとえば、localeconv()->decimal_point は、_configthreadlocale() 呼び出しの前に常にグローバル ロケール設定を返すようです。これは MSVC ライブラリのバグですか、それとも予期されたものですか?
ティア・パーヴォ