- bullseye-backports 4.18.1-1~bpo11+1
- testing 4.18.1-1
- unstable 4.18.1-1
USELOCALE(3) | Руководство программиста Linux | USELOCALE(3) |
ИМЯ¶
uselocale - задаёт/получает локаль для вызывающей нити
СИНТАКСИС¶
#include <locale.h>
locale_t uselocale(locale_t newloc);
uselocale():
- Начиная с glibc 2.10:
- _XOPEN_SOURCE >= 700
- До glibc 2.10:
- _GNU_SOURCE
ОПИСАНИЕ¶
Функция uselocale() задаёт текущую локаль в вызвавшей нити и возвращает использовавшуюся локаль в этой нити ранее. После успешного выполнения uselocale() любые выполняемые нитью вызовы функций, зависящие от локали, будут работать с учётом установленной локали newloc.
В аргументе newloc можно указать одно из следующих значений:
- Обработчик, полученный от вызовов newlocale(3) или duplocale(3)
- Текущая локаль вызвавшей нити будет равна указанной локали.
- Специальный обработчик объекта локали LC_GLOBAL_LOCALE
- Текущая локаль вызвавшей нити будет равна глобальной локали, установленной setlocale(3).
- (locale_t) 0
- Текущая локаль вызвавшей нити останется неизменной (и текущая локаль возвращается как результат работы функции).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ¶
При успешном выполнении uselocale() возвращает обработчик локали, который был установлен предыдущим вызовом uselocale() в этой нити или LC_GLOBAL_LOCALE, если это первый вызов. При ошибке возвращается (locale_t) 0, а errno присваивается код ошибки.
ОШИБКИ¶
- EINVAL
- Значение newloc не указывает на допустимый объект локали.
ВЕРСИИ¶
Функция uselocale() впервые появилась в версии 2.3 библиотеки GNU C.
СООТВЕТСТВИЕ СТАНДАРТАМ¶
POSIX.1-2008.
ЗАМЕЧАНИЯ¶
В отличие от setlocale(3), uselocale() не позволяет выборочно указывать отдельные категории локали. Для задания локали, которая отличается только отдельными категориями от текущей локали, используйте вызов duplocale(3) и newlocale(3) для получения эквивалента объекта локали для текущей локали и измените желаемые категории в этом объекте.
ПРИМЕРЫ¶
Смотрите newlocale(3) и duplocale(3).
СМ. ТАКЖЕ¶
locale(1), duplocale(3), freelocale(3), newlocale(3), setlocale(3), locale(5), locale(7)
ЗАМЕЧАНИЯ¶
Эта страница является частью проекта Linux man-pages версии 5.10. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу https://www.kernel.org/doc/man-pages/.
ПЕРЕВОД¶
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy Ovchinnikov <dmitriyxt5@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.
9 июня 2020 г. | Linux |