Как получить эквивалент printf_l в Linux? - PullRequest
4 голосов
/ 07 ноября 2008

Эта функция существует в OS X и позволяет передавать пользовательские локальные функции. setlocale не является потокобезопасным и передает языковой стандарт в качестве параметра.

Если нет эквивалента, любой способ независимого от локали printf или printf только для double (% g) будет в порядке.

Ответы [ 2 ]

3 голосов
/ 07 ноября 2008

Вы можете попробовать uselocale, который устанавливает локаль потока (а не локаль процесса) перед вызовом printf.

1 голос
/ 12 ноября 2008

Существуют независимые от локали процедуры двойного преобразования строки в http://www.netlib.org/fp/. Также доступно преобразование строки в двойное. API не очень хороший, но код работает.

...