Здравствуйте, chipmunk, Вы писали:
C>Функция есть в Windows, Mac, BSD, но нет почему-то в Linux
C>Та которая стандартная swprintf зависит от текущей локали, что очень не хорошо. Каждый раз переключать глобальную локаль ну очень бы не хотелось, да и не безопасно в многопоточной среде.
C>А задача весьма простая — быстро конвертировать тип double в std::wstring и дробный разделитель должен быть всегда точкой независимо от текущей локали.
а обязательно printf? можно ведь и средствами c++
std::wstring double2wstring (double n)
{
std::wostringstream os;
os.imbue (std::locale::classic());
os << n;
return os.str();
}