локаль как параметр для CRT-функций
От: chipmunk  
Дата: 20.08.11 04:02
Оценка:
В CRT есть много функций, которые зависят от текущей глобальной локали, например:

wcstombs()
mbstowcs()
sprintf()

Но что делать, если нужно вызвать эти функции с учётом другой локали ? Вызывать каждый раз смену глобальной локали с помощью setlocale() и потом возвращать её в исходное состояние слишком затратно по времени. В Visual Studio есть решение — это функции с окончанием _l, принимающие в качестве параметра локаль:

_wcstombs_l()
_mbstowcs_l()
_sprintf_l()

Но на других платформах таких функций нет. Посоветуйте что тут можно придумать. Глобальную локаль трогать нельзя, ну разве что кратковременно с возвращением её состояния.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.