VSPRINTF |
Imprime dans une chaine en format à partir de virtuel |
---|---|
Langage C | stdio.h |
Syntaxe
int vsprintf(char *tampon,const char *texte,va_list ptrargument); |
Paramètres
Nom | Description | |
---|---|---|
tampon | Ce paramètre permet d'indiquer la chaine de caractères ASCIZ recevant les données | |
texte | Ce paramètre permet d'indiquer le texte à écrire. Il est a noter que un ou plusieurs des spécificateurs suivants peuvent être inclus dans le texte et il utilisera un argument supplémentaire pour chaque spécificateurs : | |
Spécificateur | Description | |
%c | Ce spécificateur indique d'insérer à cette position un caractère contenu dans la liste des arguments après le texte | |
%d | Ce spécificateur indique d'insérer à cette position un entier sous forme décimal contenu dans la liste des arguments après le texte | |
%f | Ce spécificateur indique d'insérer à cette position un nombre à virgule flottante contenu dans la liste des arguments après le texte | |
%i | Ce spécificateur indique d'insérer à cette position un entier contenu dans la liste des arguments après le texte | |
%o | Ce spécificateur indique d'insérer à cette position un entier sous forme octal contenu dans la liste des arguments après le texte | |
%s | Ce spécificateur indique d'insérer à cette position une chaine de caractères contenu dans la liste des arguments après le texte | |
%x | Ce spécificateur indique d'insérer à cette position un entier sous forme hexadécimal contenu dans la liste des arguments après le texte | |
Il est possible d'ajouter une précision du nombre décimal afficher en insérant le nombre entre le symbole de pourcentage et la lettre. | ||
ptrargument | Ce paramètre permet d'indiquer le pointeur d'argument |
Description
Cette fonction effectue l'écriture de texte selon un certain format à l'aide de paramètre virtuel à partir d'un tampon.
Exemple
Voici divers exemple d'affichages de format :
Essayer maintenant !
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdarg.h>
-
- void MyVSPrintF(const char * format, ...) {
- va_list args;
- char buffer[255];
- va_start(args, format);
- vsprintf(buffer,format, args);
- puts(&buffer);
- va_end(args);
- }
-
- int main () {
- MyVSPrintF("Boujour!");
- MyVSPrintF("Entier %%i = %i",15);
- MyVSPrintF("Hexadecimal %%x = %x",16);
- MyVSPrintF("Octal %%o = %o",16);
- MyVSPrintF("Chaine de caracteres %%s = %s","message");
- MyVSPrintF("Reel %%f = %f",123.45);
- MyVSPrintF("Reel %%f = %.2f",123.45);
- return 0;
- }
on obtiendra le résultat suivant :
Boujour!Entier %i = 15
Hexadecimal %x = 10
Octal %o = 20
Chaine de caracteres %s = message
Reel %f = 123.450000
Reel %f = 123.45
Voir également
Langage de programmation - C - Référence procédures et fonctions - printf
Langage de programmation - C - Référence procédures et fonctions - va_arg
Langage de programmation - C - Référence procédures et fonctions - va_end
Langage de programmation - C - Référence procédures et fonctions - va_start
Langage de programmation - C++ - Référence procédures et fonctions - vsprintf
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 736.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 293.