Compartilhar via


Função GetCurrencyFormatW (winnls.h)

Formata uma cadeia de caracteres numérica como uma cadeia de caracteres de moeda para uma localidade especificada pelo identificador.

Observação Por motivos de interoperabilidade, o aplicativo deve preferir a função GetCurrencyFormatExGetCurrencyFormat porque a Microsoft está migrando para o uso de nomes de localidade em vez de identificadores de localidade para novas localidades. Qualquer aplicativo executado somente no Windows Vista e posterior deve usar GetCurrencyFormatEx.
 

Sintaxe

int GetCurrencyFormatW(
  [in]            LCID               Locale,
  [in]            DWORD              dwFlags,
  [in]            LPCWSTR            lpValue,
  [in, optional]  const CURRENCYFMTW *lpFormat,
  [out, optional] LPWSTR             lpCurrencyStr,
  [in]            int                cchCurrency
);

Parâmetros

[in] Locale

identificador de localidade que especifica a localidade para a qual essa função formata a cadeia de caracteres de moeda. Você pode usar a macro MAKELCID para criar um identificador de localidade ou usar um dos seguintes valores predefinidos.

[in] dwFlags

Sinalizadores que controlam o formato de moeda. O aplicativo deve definir esse parâmetro como 0 se lpFormat não estiver definido como NULL. Nesse caso, a função formata a cadeia de caracteres usando substituições de usuário para o formato de moeda padrão para a localidade. Se lpFormat estiver definido como NULL, o aplicativo poderá especificar LOCALE_NOUSEROVERRIDE para formatar a cadeia de caracteres usando o formato de moeda padrão do sistema para a localidade especificada.

Cuidado Uso de LOCALE_NOUSEROVERRIDE é altamente desencorajado, pois desabilita as preferências do usuário.
 

[in] lpValue

Para obter detalhes, consulte o parâmetro lpValue de GetCurrencyFormatEx.

[in, optional] lpFormat

Ponteiro para uma estrutura CURRENCYFMT que contém informações de formatação de moeda. Todos os membros da estrutura devem conter valores apropriados. O aplicativo pode definir esse parâmetro como NULL se a função for usar o formato de moeda da localidade especificada. Se esse parâmetro não estiver definido como NULL, a função usará a localidade especificada apenas para informações de formatação não especificadas na estrutura de CURRENCYFMT, por exemplo, o valor da cadeia de caracteres para o sinal negativo usado pela localidade.

[out, optional] lpCurrencyStr

Ponteiro para um buffer no qual essa função recupera a cadeia de caracteres de moeda formatada.

[in] cchCurrency

Tamanho, em caracteres, do buffer lpCurrencyStr . O aplicativo define esse parâmetro como 0 se a função deve retornar o tamanho do buffer necessário para manter a cadeia de caracteres de moeda formatada. Nesse caso, o parâmetro lpCurrencyStr não é usado.

Valor de retorno

Retorna o número de caracteres recuperados no buffer indicado por lpCurrencyStr se bem-sucedido. Se o parâmetro cchCurrency for definido como 0, a função retornará o tamanho do buffer necessário para manter a cadeia de caracteres de moeda formatada, incluindo um caractere nulo de terminação.

A função retornará 0 se não for bem-sucedida. Para obter informações de erro estendidas, o aplicativo pode chamar GetLastError, que pode retornar um dos seguintes códigos de erro:

  • ERROR_INSUFFICIENT_BUFFER. Um tamanho de buffer fornecido não era grande o suficiente ou foi definido incorretamente como NULL.
  • ERROR_INVALID_FLAGS. Os valores fornecidos para sinalizadores não eram válidos.
  • ERROR_INVALID_PARAMETER. Qualquer um dos valores de parâmetro era inválido.

Observações

Essa função pode recuperar dados de localidades personalizadas. Não há garantia de que os dados sejam iguais de computador para computador ou entre execuções de um aplicativo. Se o aplicativo precisar persistir ou transmitir dados, consulte Usando dados de localidade persistente.

Quando a versão ANSI dessa função é usada com um identificador de localidade somente Unicode, a chamada pode ser bem-sucedida porque o sistema operacional usa a página de código do sistema. No entanto, caracteres que são indefinidos na página de código do sistema aparecem na cadeia de caracteres como um ponto de interrogação (?).

Nota

O cabeçalho winnls.h define GetCurrencyFormat como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho winnls.h (inclua Windows.h)
biblioteca Kernel32.lib
de DLL Kernel32.dll

Consulte também

CURRENCYFMT

GetCurrencyFormatEx

GetNumberFormat

de Suporte à Linguagem Nacional

funções de suporte à linguagem nacional