Partilhar via


localeconv

Obtém informações detalhadas sobre configurações de localidade.

Sintaxe

struct lconv *localeconv( void );

Valor retornado

localeconv Retorna um ponteiro para um objeto preenchido do tipo struct lconv. Os valores contidos no objeto são copiados das configurações de localidade no armazenamento local de thread e podem ser substituídos por chamadas subsequentes para localeconv. As alterações feitas nos valores desse objeto não modificam as configurações de localidade. Chamadas para setlocale com category valores de LC_ALL, LC_MONETARY, ou LC_NUMERIC substituem o conteúdo da estrutura.

Comentários

A função localeconv obtém informações detalhadas sobre a formatação numérica da localidade atual. Essas informações são armazenadas em uma estrutura do tipo lconv. A lconv estrutura, definida em LOCALE. H, contém os seguintes membros:

Campo Significado
decimal_point,
_W_decimal_point
Ponteiro para caractere de ponto decimal para quantidades não monetárias.
thousands_sep,
_W_thousands_sep
Ponteiro para caractere que separa grupos de dígitos à esquerda do ponto decimal para quantidades não monetárias.
grouping Ponteiro para um inteiro do tamanho de char que contém o tamanho de cada grupo de dígitos em quantidades não monetárias.
int_curr_symbol,
_W_int_curr_symbol
Ponteiro para o símbolo de moeda internacional para a localidade atual. Os três primeiros caracteres especificam o símbolo de moeda alfabético internacional, conforme definido na norma ISO 4217, Códigos para a Representação de Moedas e Fundos. O quarto caractere (caractere nulo imediatamente anterior) separa o símbolo de moeda internacional da quantidade monetária.
currency_symbol,
_W_currency_symbol
Ponteiro para o símbolo de moeda local da localidade atual.
mon_decimal_point,
_W_mon_decimal_point
Ponteiro para caractere de ponto decimal para quantidades monetárias.
mon_thousands_sep,
_W_mon_thousands_sep
Ponteiro para separador de grupos de dígitos à esquerda da casa decimal em quantidades monetárias.
mon_grouping Ponteiro para um inteiro do tamanho de char que contém o tamanho de cada grupo de dígitos em quantidades monetárias.
positive_sign,
_W_positive_sign
Cadeia de caracteres indicando o sinal para quantidades monetárias não negativas.
negative_sign,
_W_negative_sign
Cadeia de caracteres indicando o sinal para quantidades monetárias negativas.
int_frac_digits Número de dígitos à direita da vírgula decimal em quantidades monetárias internacionalmente formatadas.
frac_digits Número de dígitos à direita da vírgula decimal em quantidades monetárias formatadas.
p_cs_precedes Definido como 1 se o símbolo de moeda preceder o valor para a quantidade monetária formatada não negativa. Definido como 0 se o símbolo seguir o valor.
p_sep_by_space Definido como 1 se o símbolo de moeda for separado por espaço do valor para a quantidade monetária formatada não negativa. Defina como 0 se não houver separação de espaço.
n_cs_precedes Definido como 1 se o símbolo de moeda preceder o valor para a quantidade monetária formatada negativa. Definido como 0 se o símbolo suceder o valor.
n_sep_by_space Definido como 1 se o símbolo de moeda for separado por espaço do valor para a quantidade monetária formatada negativa. Defina como 0 se não houver separação de espaço.
p_sign_posn Em quantidades monetárias formatadas não negativas, posição do sinal positivo.
n_sign_posn Em quantidades monetárias formatadas negativas, posição do sinal positivo.

Exceto conforme especificado, os lconv membros da estrutura que têm char * e wchar_t * versões são ponteiros para cadeias de caracteres. Qualquer membro igual a "" (ou L"" para wchar_t *) é de comprimento zero ou não tem suporte na localidade atual. Ambos decimal_point são _W_decimal_point sempre suportados e têm um comprimento diferente de zero.

Os char membros da estrutura são pequenos números não negativos, não caracteres. Não há suporte para qualquer membro igual CHAR_MAX à localidade atual.

Os valores de grouping e mon_grouping são interpretados de acordo com as seguintes regras:

  • CHAR_MAX - Não execute nenhum agrupamento adicional.

  • 0: usa o elemento anterior para cada um dos dígitos restantes.

  • n - Número de dígitos que compõem o grupo atual. O próximo elemento é examinado para determinar o tamanho do próximo grupo de dígitos antes do grupo atual.

Os valores de for int_curr_symbol são interpretados de acordo com as seguintes regras:

  • Os três primeiros caracteres especificam o símbolo de moeda alfabético internacional, conforme definido na norma ISO 4217, Códigos para a Representação de Moedas e Fundos.

  • O quarto caractere (caractere nulo imediatamente anterior) separa o símbolo de moeda internacional da quantidade monetária.

Os valores para p_cs_precedes e n_cs_precedes são interpretados de acordo com as seguintes regras (a n_cs_precedes regra está entre parênteses):

  • 0: o símbolo de moeda sucede o valor para a quantidade monetária formatada não negativa (negativa).

  • 1: o símbolo de moeda precede o valor para a quantidade monetária formatada não negativa (negativa).

Os valores para p_sep_by_space e n_sep_by_space são interpretados de acordo com as seguintes regras (a n_sep_by_space regra está entre parênteses):

  • 0: o símbolo da moeda é separado do valor por espaço para valor monetário formatado não negativo (negativo).

  • 1 - Não há separação de espaço entre o símbolo de moeda e o valor para o valor monetário formatado não negativo (negativo).

Os valores para p_sign_posn e n_sign_posn são interpretados de acordo com as seguintes regras:

  • 0: parênteses circundam os símbolos de quantidade e moeda.

  • 1: a cadeia de caracteres de sinal precede a quantidade e o símbolo da moeda.

  • 2: a cadeia de caracteres de sinal segue a quantidade e o símbolo da moeda.

  • 3: a cadeia de caracteres de sinal precede imediatamente o símbolo de moeda.

  • 4: a cadeia de caracteres de sinal segue imediatamente o símbolo da moeda.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.

Requisitos

Rotina Cabeçalho necessário
localeconv <locale.h>

Para obter informações sobre compatibilidade, consulte Compatibilidade.

Bibliotecas

Todas as versões das bibliotecas em tempo de execução C.

Confira também

Localidade
setlocale
Funções strcoll
strftime, wcsftime, _strftime_l, _wcsftime_l
strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l