Учебники

Библиотека C —

Заголовок locale.h определяет специфичные для местоположения настройки, такие как форматы даты и символы валюты. Вы найдете несколько макросов, определенных вместе с важной структурой struct lconv и двумя важными функциями, перечисленными ниже.

Макросы библиотеки

Ниже приведены макросы, определенные в заголовке, и эти макросы будут использоваться в двух функциях, перечисленных ниже:

Sr.No. Макрос и описание
1

LC_ALL

Устанавливает все.

2

LC_COLLATE

Влияет на функции strcoll и strxfrm.

3

LC_CTYPE

Влияет на все функции персонажа.

4

LC_MONETARY

Влияет на денежную информацию, предоставляемую функцией localeconv.

5

LC_NUMERIC

Влияет на форматирование десятичной точки и информацию, предоставляемую функцией localeconv.

6

LC_TIME

Влияет на функцию strftime.

LC_ALL

Устанавливает все.

LC_COLLATE

Влияет на функции strcoll и strxfrm.

LC_CTYPE

Влияет на все функции персонажа.

LC_MONETARY

Влияет на денежную информацию, предоставляемую функцией localeconv.

LC_NUMERIC

Влияет на форматирование десятичной точки и информацию, предоставляемую функцией localeconv.

LC_TIME

Влияет на функцию strftime.

Функции библиотеки

Ниже приведены функции, определенные в заголовке locale.h —

Sr.No. Описание функции
1 char * setlocale (категория int, const char * locale)

Устанавливает или читает информацию, зависящую от местоположения.

2 struct lconv * localeconv (void)

Устанавливает или читает информацию, зависящую от местоположения.

Устанавливает или читает информацию, зависящую от местоположения.

Устанавливает или читает информацию, зависящую от местоположения.

Структура библиотеки

typedef struct {
   char *decimal_point;
   char *thousands_sep;
   char *grouping;	
   char *int_curr_symbol;
   char *currency_symbol;
   char *mon_decimal_point;
   char *mon_thousands_sep;
   char *mon_grouping;
   char *positive_sign;
   char *negative_sign;
   char int_frac_digits;
   char frac_digits;
   char p_cs_precedes;
   char p_sep_by_space;
   char n_cs_precedes;
   char n_sep_by_space;
   char p_sign_posn;
   char n_sign_posn;
} lconv

Ниже приводится описание каждого из полей —

Sr.No. Поле и описание
1

десятичная точка

Десятичный знак, используемый для неденежных значений.

2

thousands_sep

Символ разделителя тысяч используется для неденежных значений.

3

группировка

Строка, которая указывает размер каждой группы цифр в неденежных количествах. Каждый символ представляет целочисленное значение, которое обозначает количество цифр в текущей группе. Значение 0 означает, что предыдущее значение должно использоваться для остальных групп.

4

int_curr_symbol

Это строка используемых международных символов валюты. Первые три символа — это те, которые определены ISO 4217: 1987, а четвертый — символ, который отделяет символ валюты от денежного количества.

5

символ валюты

Местный символ используется для валюты.

6

mon_decimal_point

Символ десятичной точки, используемый для денежных значений.

7

mon_thousands_sep

Символ группирования тысяч, используемый для денежных значений.

8

mon_grouping

Строка, элементы которой определяют размер группировки цифр в денежных значениях. Каждый символ представляет целочисленное значение, которое обозначает количество цифр в текущей группе. Значение 0 означает, что предыдущее значение должно использоваться для остальных групп.

9

positive_sign

Символ используется для положительных денежных значений.

10

negative_sign

Символ, используемый для отрицательных денежных значений.

11

int_frac_digits

Количество цифр, отображаемых после десятичной точки в международных денежных значениях.

12

frac_digits

Количество цифр после десятичной запятой в денежных значениях.

13

P_cs_precedes лемент

Если равно 1, то currency_symbol появляется перед положительным денежным значением. Если равно 0, то currency_symbol появляется после положительного денежного значения.

14

p_sep_by_space

Если равно 1, то currency_symbol отделяется пробелом от положительного денежного значения. Если равно 0, то между currency_symbol и положительным денежным значением нет пробела.

15

n_cs_precedes

Если равно 1, то currency_symbol предшествует отрицательному денежному значению. Если равно 0, то currency_symbol следует отрицательное денежное значение.

16

n_sep_by_space

Если равно 1, то currency_symbol отделяется пробелом от отрицательного денежного значения. Если равно 0, то между currency_symbol и отрицательным денежным значением нет пробела.

17

p_sign_posn

Представляет позицию positive_sign в положительном денежном выражении.

18

n_sign_posn

Представляет позицию отрицательного знака в отрицательном денежном выражении.

десятичная точка

Десятичный знак, используемый для неденежных значений.

thousands_sep

Символ разделителя тысяч используется для неденежных значений.

группировка

Строка, которая указывает размер каждой группы цифр в неденежных количествах. Каждый символ представляет целочисленное значение, которое обозначает количество цифр в текущей группе. Значение 0 означает, что предыдущее значение должно использоваться для остальных групп.

int_curr_symbol

Это строка используемых международных символов валюты. Первые три символа — это те, которые определены ISO 4217: 1987, а четвертый — символ, который отделяет символ валюты от денежного количества.

символ валюты

Местный символ используется для валюты.

mon_decimal_point

Символ десятичной точки, используемый для денежных значений.

mon_thousands_sep

Символ группирования тысяч, используемый для денежных значений.

mon_grouping

Строка, элементы которой определяют размер группировки цифр в денежных значениях. Каждый символ представляет целочисленное значение, которое обозначает количество цифр в текущей группе. Значение 0 означает, что предыдущее значение должно использоваться для остальных групп.

positive_sign

Символ используется для положительных денежных значений.

negative_sign

Символ, используемый для отрицательных денежных значений.

int_frac_digits

Количество цифр, отображаемых после десятичной точки в международных денежных значениях.

frac_digits

Количество цифр после десятичной запятой в денежных значениях.

P_cs_precedes лемент

Если равно 1, то currency_symbol появляется перед положительным денежным значением. Если равно 0, то currency_symbol появляется после положительного денежного значения.

p_sep_by_space

Если равно 1, то currency_symbol отделяется пробелом от положительного денежного значения. Если равно 0, то между currency_symbol и положительным денежным значением нет пробела.

n_cs_precedes

Если равно 1, то currency_symbol предшествует отрицательному денежному значению. Если равно 0, то currency_symbol следует отрицательное денежное значение.

n_sep_by_space

Если равно 1, то currency_symbol отделяется пробелом от отрицательного денежного значения. Если равно 0, то между currency_symbol и отрицательным денежным значением нет пробела.

p_sign_posn

Представляет позицию positive_sign в положительном денежном выражении.

n_sign_posn

Представляет позицию отрицательного знака в отрицательном денежном выражении.

Следующие значения используются для p_sign_posn и n_sign_posn