Biblioteca C - <locale.h>

o locale.hheader define as configurações específicas do local, como formatos de data e símbolos de moeda. Você encontrará várias macros definidas juntamente com uma estrutura importantestruct lconv e duas funções importantes listadas abaixo.

Macros de biblioteca

A seguir estão as macros definidas no cabeçalho e essas macros serão usadas em duas funções listadas abaixo -

Sr. Não. Macro e descrição
1

LC_ALL

Define tudo.

2

LC_COLLATE

Afeta as funções strcoll e strxfrm.

3

LC_CTYPE

Afeta todas as funções do personagem.

4

LC_MONETARY

Afeta as informações monetárias fornecidas pela função localeconv.

5

LC_NUMERIC

Afeta a formatação do ponto decimal e as informações fornecidas pela função localeconv.

6

LC_TIME

Afeta a função strftime.

Funções de biblioteca

A seguir estão as funções definidas no cabeçalho locale.h -

Sr. Não. Descrição da função
1 char * setlocale (int category, const char * locale)

Define ou lê informações dependentes de localização.

2 struct lconv * localeconv (void)

Define ou lê informações dependentes de localização.

Estrutura da Biblioteca

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

A seguir está a descrição de cada um dos campos -

Sr. Não. Campo e Descrição
1

decimal_point

Caractere de ponto decimal usado para valores não monetários.

2

thousands_sep

Caractere separador de milhares de lugares usado para valores não monetários.

3

grouping

Uma string que indica o tamanho de cada grupo de dígitos em quantidades não monetárias. Cada caractere representa um valor inteiro, que designa o número de dígitos no grupo atual. Um valor 0 significa que o valor anterior deve ser usado para o resto dos grupos.

4

int_curr_symbol

É uma sequência de símbolos de moeda internacionais usados. Os primeiros três caracteres são os especificados pela ISO 4217: 1987 e o quarto é o caractere, que separa o símbolo da moeda da quantidade monetária.

5

currency_symbol

O símbolo local usado para moeda.

6

mon_decimal_point

O caractere de ponto decimal usado para valores monetários.

7

mon_thousands_sep

O caractere de agrupamento de milhares de lugares usado para valores monetários.

8

mon_grouping

Uma string cujos elementos definem o tamanho do agrupamento de dígitos em valores monetários. Cada caractere representa um valor inteiro que designa o número de dígitos no grupo atual. Um valor 0 significa que o valor anterior deve ser usado para o resto dos grupos.

9

positive_sign

O caractere usado para valores monetários positivos.

10

negative_sign

O caractere usado para valores monetários negativos.

11

int_frac_digits

Número de dígitos a serem mostrados após o ponto decimal em valores monetários internacionais.

12

frac_digits

Número de dígitos a serem mostrados após o ponto decimal em valores monetários.

13

p_cs_precedes

Se for igual a 1, então o currency_symbol aparecerá antes de um valor monetário positivo. Se for igual a 0, então o currency_symbol aparecerá após um valor monetário positivo.

14

p_sep_by_space

Se for igual a 1, então o currency_symbol é separado por um espaço de um valor monetário positivo. Se for igual a 0, então não há espaço entre o currency_symbol e um valor monetário positivo.

15

n_cs_precedes

Se for igual a 1, então o currency_symbol precede um valor monetário negativo. Se for igual a 0, então o currency_symbol obtém um valor monetário negativo.

16

n_sep_by_space

Se for igual a 1, então o currency_symbol é separado por um espaço de um valor monetário negativo. Se for igual a 0, não há espaço entre currency_symbol e um valor monetário negativo.

17

p_sign_posn

Representa a posição do sinal positivo em um valor monetário positivo.

18

n_sign_posn

Representa a posição do sinal negativo em um valor monetário negativo.

Os seguintes valores são usados ​​para p_sign_posn e n_sign_posn -

Valor Descrição
0 Os parênteses encapsulam o valor e o currency_symbol.
1 O sinal precede o valor e currency_symbol.
2 O sinal sucede o valor e currency_symbol.
3 O sinal precede imediatamente o valor e currency_symbol.
4 O sinal vem imediatamente após o valor e currency_symbol.