The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

locale (7)
  • locale (1) ( Solaris man: Команды и прикладные программы пользовательского уровня )
  • locale (1) ( FreeBSD man: Команды и прикладные программы пользовательского уровня )
  • locale (1) ( Русские man: Команды и прикладные программы пользовательского уровня )
  • locale (1) ( Linux man: Команды и прикладные программы пользовательского уровня )
  • locale (1) ( POSIX man: Команды и прикладные программы пользовательского уровня )
  • locale (3) ( Linux man: Библиотечные вызовы )
  • locale (5) ( Solaris man: Форматы файлов )
  • locale (5) ( Русские man: Форматы файлов )
  • locale (5) ( Linux man: Форматы файлов )
  • >> locale (7) ( Русские man: Макропакеты и соглашения )
  • locale (7) ( Linux man: Макропакеты и соглашения )
  • Ключ locale обнаружен в базе ключевых слов.
  •  

    НАЗВАНИЕ

    locale - описание поддержки нескольких языков  

    СИНТАКСИС

    #include <locale.h>
    
     

    ОПИСАНИЕ

    Локализация - это сочетание языковых и культурных аспектов. Они включают в себя: язык сообщений, различные наборы символов, лексикографические соглашения и т.д. Программа должна определять локализацию и действовать согласно ее установкам в целях достижения взаимосвязи различных культур.

    Файл <locale.h> описывает типы данных, функции и макросы, необходимые для выполнения этой задачи.

    В нем описаны функции: setlocale(), устанавливающая текущие региональные настройки, и localeconv(), которая возвращает информацию о форматировании чисел.

    Существуют различные категории локализации, которые программа может использовать; они описаны как макросы. Используя их в качестве первого аргумента функции setlocale(), можно установить региональные настройки одной из следующих категорий:

    LC_COLLATE
    Эта категория изменяет поведение функций strcoll() и strxfrm(), которые используются для сравнения строк с учетом местного алфавита. Например, немецкая sharp s рассматривается как "ss".
    LC_CTYPE
    Эта категория влияет на поведение функций обработки и классификации символов, таких, как: isupper() и toupper(), а также многобайтных символьных функций, таких, как: mblen() или wctomb().
    LC_MONETARY
    влияет на информацию, возвращаемую функцией localeconv(), которая описывает способ отображения числа: например, необходимо ли использовать в качестве десятичного разделителя точку или запятую. Этой информацией пользуется функция strfmon().
    LC_MESSAGES
    изменяет язык отображаемых сообщений и указывает, как должны выглядеть положительный и отрицательный ответы. Библиотека GNU C содержит функцию rpmatch() для более удобного применения этой информации.
    LC_NUMERIC
    изменяет информацию, которой пользуется семейство функций printf() и scanf(), если необходимо использовать региональные настройки. Эта информация может быть также прочитана при помощи функции localeconv().
    LC_TIME
    влияет на поведение функции strftime(), которая используется для отображения текущего времени в местном формате; например, большая часть Европы использует 24-часовой формат, тогда как в США используют 12-часовой.
    LC_ALL
    Все вышеперечисленное.

    Если второй аргумент функции setlocale()--- пустая строка , то локализация по умолчанию будет определяться следующим образом:

    1.
    Если существует непустая переменная окружения LC_ALL, то используется ее значение.
    2.
    Если существует переменная окружения с именем одной из вышеописанных категорий локализации и она непустая, то ее значение присваивается этой категории.
    3.
    Если существует непустая переменная окружения LANG, то используется ее значение.

    Информация о локальном форматировании чисел доступна в структуре struct lconv, возвращаемой функцией localeconv(), которая описана следующим образом:

    struct lconv
    {
      /* Числовая (не связанная с деньгами) информация.  */
      char *decimal_point;          /* Символ десятичного разделителя.  */
      char *thousands_sep;          /* Разделитель тысяч.        */
      /* Каждый элемент является номером цифры в каждой группе;
         большие элементы указывают на крайние слева значения.
         Элемент с значением CHAR_MAX означает, что старших групп больше нет.
         Элемент со значением 0 указывает, что предыдущий элемент используется
         для всех групп, находящихся левее.  */
      char *grouping;
      /* Денежная информация.  */
      /* Первые три символа являются символом валюты согласно ISO 4217.
         Четвертый символ является разделителем. Пятый символ равен '\0'.    */
      char *int_curr_symbol;
      char *currency_symbol;        /* Местный символ валюты.    */
      char *mon_decimal_point;      /* Символ десятичной точки.  */
      char *mon_thousands_sep;      /* Разделитель тысяч.        */
      char *mon_grouping;           /* См. выше описание элемента `grouping' */
      char *positive_sign;          /* Знак положительных значений.  */
      char *negative_sign;          /* Знак отрицательных значений.  */
      char int_frac_digits;         /* Представление дробных чисел в международном варианте.  */
      char frac_digits;             /* Представление дробных чисел в локальном варианте.  */
      /* 1, если символ валюты предшествует положительному значению, 
         0, если следует за ним.  */
      char p_cs_precedes;
      /* 1, если пробел отделяет символ валюты от положительного значения.    */
      char p_sep_by_space;
      /* 1, если символ валюты предшествует отрицательному значению, 
         0, если следует за ним.  */
      char n_cs_precedes;
      /* 1, если пробел отделяет символ валюты от отрицательного значения.    */
      char n_sep_by_space;
      /* Позиция положительного или отрицательного знака:
         0 Скобки окружают количество и символ валюты.
         1 Знак предшествует количеству и символу валюты.
         2 Знак следует за количеством и символом валюты.
         3 Знак непосредственно предшествует символу валюты.
         4 Знак непосредственно следует за символом валюты.       */
      char p_sign_posn;
      char n_sign_posn;
    };
    
     

    СООТВЕТСТВИЕ СТАНДАРТАМ

    POSIX.1  

    СМ. ТАКЖЕ

    setlocale(3), localeconv(3), locale(1), localedef(1), rpmatch(3), strfmon(3), strcoll(3), strxfrm(3), strftime(3)


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    СООТВЕТСТВИЕ СТАНДАРТАМ
    СМ. ТАКЖЕ


    Поиск по тексту MAN-ов: 




    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру