Partager via


GetCurrencyFormatA, fonction (winnls.h)

Met en forme une chaîne numérique en tant que chaîne monétaire pour un paramètre régional spécifié par l’identificateur.

Note Pour des raisons d’interopérabilité, l’application doit préférer la fonction GetCurrencyFormatEx à GetCurrencyFormat , car Microsoft effectue une migration vers l’utilisation de noms régionaux au lieu d’identificateurs régionaux pour les nouveaux paramètres régionaux. Toute application qui s’exécute uniquement sur Windows Vista et versions ultérieures doit utiliser GetCurrencyFormatEx.
 

Syntaxe

int GetCurrencyFormatA(
  [in]            LCID               Locale,
  [in]            DWORD              dwFlags,
  [in]            LPCSTR             lpValue,
  [in, optional]  const CURRENCYFMTA *lpFormat,
  [out, optional] LPSTR              lpCurrencyStr,
  [in]            int                cchCurrency
);

Paramètres

[in] Locale

Identificateur de paramètres régionaux qui spécifie les paramètres régionaux pour lesquels cette fonction met en forme la chaîne monétaire. Vous pouvez utiliser la macro MAKELCID pour créer un identificateur de paramètres régionaux ou utiliser l’une des valeurs prédéfinies suivantes.

[in] dwFlags

Indicateurs contrôlant le format monétaire. L’application doit définir ce paramètre sur 0 si lpFormat n’est pas défini sur NULL. Dans ce cas, la fonction met en forme la chaîne à l’aide de l’utilisateur remplace par le format monétaire par défaut pour les paramètres régionaux. Si lpFormat a la valeur NULL, l’application peut spécifier LOCALE_NOUSEROVERRIDE pour mettre en forme la chaîne à l’aide du format monétaire par défaut du système pour les paramètres régionaux spécifiés.

Attention L’utilisation de LOCALE_NOUSEROVERRIDE est fortement déconseillée, car elle désactive les préférences utilisateur.
 

[in] lpValue

Pour plus d’informations, consultez le paramètre lpValue de GetCurrencyFormatEx.

[in, optional] lpFormat

Pointeur vers une structure CURRENCYFMT qui contient des informations de mise en forme monétaire. Tous les membres de la structure doivent contenir les valeurs appropriées. L’application peut définir ce paramètre sur NULL si la fonction doit utiliser le format monétaire des paramètres régionaux spécifiés. Si ce paramètre n’est pas défini sur NULL, la fonction utilise les paramètres régionaux spécifiés uniquement pour la mise en forme des informations non spécifiées dans la structure CURRENCYFMT , par exemple, la valeur de chaîne pour le signe négatif utilisé par les paramètres régionaux.

[out, optional] lpCurrencyStr

Pointeur vers une mémoire tampon dans laquelle cette fonction récupère la chaîne monétaire mise en forme.

[in] cchCurrency

Taille, en caractères, de la mémoire tampon lpCurrencyStr . L’application définit ce paramètre sur 0 si la fonction doit retourner la taille de la mémoire tampon requise pour contenir la chaîne monétaire mise en forme. Dans ce cas, le paramètre lpCurrencyStr n’est pas utilisé.

Valeur retournée

Retourne le nombre de caractères récupérés dans la mémoire tampon indiquée par lpCurrencyStr en cas de réussite. Si le paramètre cchCurrency a la valeur 0, la fonction retourne la taille de la mémoire tampon requise pour contenir la chaîne monétaire mise en forme, y compris un caractère null de fin.

La fonction retourne 0 si elle ne réussit pas. Pour obtenir des informations d’erreur étendues, l’application peut appeler GetLastError, qui peut retourner l’un des codes d’erreur suivants :

  • ERROR_INSUFFICIENT_BUFFER. Une taille de mémoire tampon fournie n’était pas assez grande ou elle a été incorrectement définie sur NULL.
  • ERROR_INVALID_FLAGS. Les valeurs fournies pour les indicateurs n’étaient pas valides.
  • ERROR_INVALID_PARAMETER. L’une des valeurs de paramètre n’était pas valide.

Remarques

Cette fonction peut récupérer des données à partir de paramètres régionaux personnalisés. Il n’est pas garanti que les données soient identiques d’un ordinateur à l’autre ou entre les exécutions d’une application. Si votre application doit conserver ou transmettre des données, consultez Utilisation des données de paramètres régionaux persistants.

Lorsque la version ANSI de cette fonction est utilisée avec un identificateur de paramètres régionaux Unicode uniquement, l’appel peut réussir, car le système d’exploitation utilise la page de code système. Toutefois, les caractères non définis dans la page de code système apparaissent dans la chaîne sous forme de point d’interrogation (?).

Notes

L’en-tête winnls.h définit GetCurrencyFormat comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winnls.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CURRENCYFMT

GetCurrencyFormatEx

GetNumberFormat

Prise en charge des langues nationales

Fonctions de prise en charge des langues nationales