Partager via


fonction wvsprintfW (winuser.h)

Écrit des données mises en forme dans la mémoire tampon spécifiée à l’aide d’un pointeur vers une liste d’arguments. Les éléments pointés par la liste d’arguments sont convertis et copiés dans une mémoire tampon de sortie conformément à la spécification de format correspondante dans la chaîne de contrôle de format. La fonction ajoute un caractère null de fin aux caractères qu’elle écrit, mais la valeur de retour n’inclut pas le caractère null de fin dans son nombre de caractères.

Avertissement N’utilisez pas. Envisagez plutôt d’utiliser l’une des fonctions suivantes : StringCbVPrintf, StringCbVPrintfEx, StringCchVPrintf ou StringCchVPrintfEx. Consultez Considérations relatives à la sécurité.
 

Syntaxe

int wvsprintfW(
  [out] LPWSTR  unnamedParam1,
  [in]  LPCWSTR unnamedParam2,
  [in]  va_list arglist
);

Paramètres

[out] unnamedParam1

Type : LPTSTR

Mémoire tampon qui doit recevoir la sortie mise en forme. La taille maximale de la mémoire tampon est de 1 024 octets.

[in] unnamedParam2

Type : LPCTSTR

Spécifications de contrôle de format. En plus des caractères ASCII ordinaires, une spécification de format pour chaque argument apparaît dans cette chaîne. Pour plus d’informations sur la spécification de format, consultez la fonction wsprintf .

[in] arglist

Type : va_list

Chaque élément de cette liste spécifie un argument pour la chaîne de contrôle de format. Le nombre, le type et l’interprétation des arguments dépendent des spécifications de contrôle de format correspondantes dans le paramètre lpFmt .

Valeur retournée

Type : int

Si la fonction réussit, la valeur de retour correspond au nombre de caractères stockés dans la mémoire tampon, sans compter le caractère null de fin.

Si la fonction échoue, la valeur de retour est inférieure à la longueur de la sortie attendue. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

La fonction copie la chaîne de contrôle de format dans la mémoire tampon de sortie caractère par caractère, en commençant par le premier caractère de la chaîne. Lorsqu’elle rencontre une spécification de format dans la chaîne, la fonction récupère la valeur de l’argument disponible suivant (en commençant par le premier argument de la liste), convertit cette valeur dans le format spécifié et copie le résultat dans la mémoire tampon de sortie. La fonction continue de copier des caractères et de développer les spécifications de format de cette façon jusqu’à ce qu’elle atteigne la fin de la chaîne de contrôle de format. S’il y a plus d’arguments que de spécifications de format, les arguments supplémentaires sont ignorés. S’il n’y a pas suffisamment d’arguments pour toutes les spécifications de format, les résultats ne sont pas définis.

Notes

L’en-tête winuser.h définit wvsprintf 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

Condition requise Valeur
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 winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll

Voir aussi

Conceptuel

Référence

StringCbPrintf

StringCbPrintfEx

StringCbVPrintf

StringCbVPrintfEx

StringCchPrintf

StringCchPrintfEx

StringCchVPrintf

StringCchVPrintfEx

Chaînes

wsprintf