localeconv

Получает подробные сведения о параметрах языкового стандарта.

Синтаксис

struct lconv *localeconv( void );

Возвращаемое значение

localeconv возвращает указатель на заполненный объект типа struct lconv. Значения, содержащиеся в объекте, копируются из параметров языкового стандарта в локальном хранилище потока и могут быть перезаписаны последующими вызовами localeconv. Изменения, внесенные в значения этого объекта, не изменяют параметры языкового стандарта. setlocale Вызовы со значениями LC_ALLcategory , LC_MONETARYили LC_NUMERIC перезаписывать содержимое структуры.

Замечания

Функция localeconv получает подробные сведения о форматировании чисел для текущего языкового стандарта. Эти сведения хранятся в структуре типа lconv. Структура, определенная lconv в LOCALE. H содержит следующие элементы:

Поле Значение
decimal_point,
_W_decimal_point
Указатель на символ десятичной запятой для немонетарных значений.
thousands_sep,
_W_thousands_sep
Указатель на символ, разделяющий группы цифр слева от десятичной запятой для немонетарных значений.
grouping Указатель на charцелое число размера, содержащее размер каждой группы цифр в немонетарных количествах.
int_curr_symbol,
_W_int_curr_symbol
Указатель на международный символ валюты для текущего языкового стандарта. Первые три символа определяют международный алфавитный символ валюты, как определено в стандарте ISO 4217. Коды для представления валют и фондов. Четвертый символ (непосредственно перед нуль-символом) разделяет международный символ валюты и денежное значение.
currency_symbol,
_W_currency_symbol
Указатель на символ локальной валюты для текущего языкового стандарта.
mon_decimal_point,
_W_mon_decimal_point
Указатель на символ десятичной запятой для денежных значений.
mon_thousands_sep,
_W_mon_thousands_sep
Указатель на разделитель для групп цифр слева от десятичного разряда в денежных количествах.
mon_grouping Указатель на charцелое число размера, содержащее размер каждой группы цифр в денежном количестве.
positive_sign,
_W_positive_sign
Строка, обозначающая знак для неотрицательных денежных значений.
negative_sign,
_W_negative_sign
Строка, обозначающая знак для отрицательных денежных значений.
int_frac_digits Число цифр справа от десятичной запятой в международных форматированных денежных значениях.
frac_digits Число цифр справа от десятичной запятой в форматированных денежных значениях.
p_cs_precedes Задайте значение 1, если символ валюты предшествует неотрицательному форматированному денежному значению. Задайте значение 0, если символ стоит после значения.
p_sep_by_space Задайте значение 1, если символ валюты отделяется пробелом от неотрицательного форматированного денежного значения. Установите значение 0, если нет разделения пространства.
n_cs_precedes Задайте значение 1, если символ валюты предшествует отрицательному форматированному денежному значению. Задайте значение 0, если символ следует за значением.
n_sep_by_space Задайте значение 1, если символ валюты отделяется пробелом от отрицательного форматированного денежного значения. Установите значение 0, если нет разделения пространства.
p_sign_posn В ненегивных отформатированных денежных количествах положение положительного знака.
n_sign_posn В отрицательных отформатированных денежных количествах позиция положительного знака.

Кроме указанного lconv , элементы структуры, имеющие char * и wchar_t * версии, являются указателями на строки. Любой элемент, равный "" (или L"" для wchar_t *), имеет либо нулевой длины, либо не поддерживается в текущем языковом стандарте. _W_decimal_point Оба decimal_point и всегда поддерживаются и имеют ненулевое значение.

char Члены структуры являются небольшими не отрицательными числами, а не символами. Любой член, равный CHAR_MAX , не поддерживается в текущем языковом стандарте.

Значения grouping и mon_grouping интерпретируются в соответствии со следующими правилами:

  • CHAR_MAX - Не выполняйте никаких дальнейших группирования.

  • 0. Используйте предыдущий элемент для каждой оставшейся цифры.

  • n — число цифр, составляющих текущую группу. Проверяется следующий элемент для определения размера следующей группы разрядов перед текущей группой.

Значения для int_curr_symbol них интерпретируются в соответствии со следующими правилами:

  • Первые три символа определяют международный алфавитный символ валюты, как определено в стандарте ISO 4217. Коды для представления валют и фондов.

  • Четвертый символ (непосредственно перед нуль-символом) отделяет международный символ валюты от денежного значения.

Значения для p_cs_precedes и n_cs_precedes интерпретируются в соответствии со следующими правилами ( n_cs_precedes правило находится в скобках):

  • 0 — символ валюты следует значению ненегативного (отрицательного) отформатированного денежного значения.

  • 1 . Символ валюты предшествует значению ненегративных (отрицательных) отформатированных денежных значений.

Значения для p_sep_by_space и n_sep_by_space интерпретируются в соответствии со следующими правилами ( n_sep_by_space правило находится в скобках):

  • 0 — символ валюты отделен от значения по пробелу для ненегивных (отрицательных) отформатированных денежных значений.

  • 1 . Нет разделения пробелов между символом валюты и значением для ненегативного (отрицательного) отформатированного денежного значения.

Значения для p_sign_posn и n_sign_posn интерпретируются в соответствии со следующими правилами:

  • 0 — круглые скобки окружают количество и символ валюты.

  • 1. Строка знака предшествует количеству и символу валюты.

  • 2. Строка подписи следует числу и символу валюты.

  • 3. Строка подписи сразу же предшествует символу валюты.

  • 4. Строка подписывания сразу же следует символу валюты.

По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.

Требования

Маршрут Обязательный заголовок
localeconv <locale.h>

Дополнительные сведения о совместимости см. в разделе Совместимость.

Библиотеки

Все версии библиотек времени выполнения языка C.

См. также

Локаль
setlocale
Функции strcoll
strftime, wcsftime, _strftime_l, _wcsftime_l
strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l