Re: Где взять swprintf_l под linux ?
От: const_volatile  
Дата: 23.09.15 20:37
Оценка:
Здравствуйте, 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();
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.