Função GetCurrencyFormatEx (winnls.h)
Formata uma cadeia de caracteres numérica como uma cadeia de caracteres de moeda para uma localidade especificada por nome.
Sintaxe
int GetCurrencyFormatEx(
[in, optional] LPCWSTR lpLocaleName,
[in] DWORD dwFlags,
[in] LPCWSTR lpValue,
[in, optional] const CURRENCYFMTW *lpFormat,
[out, optional] LPWSTR lpCurrencyStr,
[in] int cchCurrency
);
Parâmetros
[in, optional] lpLocaleName
Ponteiro para um nome de localidade ou um dos valores predefinidos a seguir.
[in] dwFlags
Sinalizadores que controlam a operação da função. 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 for 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.
[in] lpValue
Ponteiro para uma cadeia de caracteres terminada em nulo que contém a cadeia de caracteres de número a ser formatada. Essa cadeia de caracteres pode conter apenas os caracteres a seguir. Todos os outros caracteres são inválidos. A função retornará um erro se a cadeia de caracteres se desviar dessas regras.
- Caracteres "0" a "9"
- Um ponto decimal (ponto) se o número for um valor de ponto flutuante
- Um sinal de subtração na primeira posição de caractere se o número for um valor negativo
[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 poderá 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 somente para informações de formatação não especificadas na estrutura 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 pode definir esse parâmetro como 0 para retornar o tamanho do buffer necessário para manter a cadeia de caracteres de moeda formatada. Nesse caso, o buffer indicado por lpCurrencyStr não é usado.
Valor retornado
Retorna o número de caracteres recuperados no buffer indicado por lpCurrencyStr se tiver êxito. Se o parâmetro cchCurrency for 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 estava 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.
Comentários
A partir do Windows 8: Se seu aplicativo passar marcas de idioma para essa função do namespace Windows.Globalization , ele deverá primeiro converter as marcas chamando ResolveLocaleName.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | winnls.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |