uselocale(3)

НАИМЕНОВАНИЕ
uselocale - задаёт/получает локаль для вызывающей нити

БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)

ОБЗОР
#include <locale.h>

locale_t uselocale(locale_t newloc);

    Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

uselocale():
    Начиная с glibc 2.10:
        _XOPEN_SOURCE >= 700
    До glibc 2.10:
        _GNU_SOURCE

ОПИСАНИЕ
Функция uselocale() задаёт текущую локаль в вызвавшей нити и возвращает использовавшуюся локаль в этой нити ранее. После успешного выполнения uselocale() любые выполняемые нитью вызовы функций, зависящие от локали, будут работать с учётом установленной локали newloc.

В аргументе newloc можно указать одно из следующих значений:

A handle returned by a call to
    newlocale(3) or duplocale(3) The calling thread's current locale is set to the specified locale.

The special locale object handle
    LC_GLOBAL_LOCALE The calling thread's current locale is set to the global locale determined by setlocale(3).

(locale_t) 0
    Текущая локаль вызвавшей нити останется неизменной (и текущая локаль возвращается как результат работы функции).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
On success, uselocale() returns the locale handle that was set by the previous call to uselocale() in this thread, or LC_GLOBAL_LOCALE if there was no such previous call. On error, it returns (locale_t) 0, and sets errno to indicate the error.

ОШИБКИ

EINVAL
    Значение newloc не указывает на допустимый объект локали.

СТАНДАРТЫ
POSIX.1-2008.

ИСТОРИЯ
glibc 2.3. 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)

ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) 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 (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков (<debian-l10n-russian@lists.debian.org>).