sprintf()        : mémorise des sorties formatées dans une chaîne de caractères.

    Prototype:
      int sprintf(char *tampon, const char *format [, argument, ...]);
      dans: <stdio.h>

    Description:

      Comme   printf(),   la fonction sprintf() convertit une ou plusieurs variables suivant les formats précisés. Mais sprintf place les résultats dans la chaîne 'tampon' (son premier argument), alors que printf les envoie sur la sortie standard.

      Les résultats placés dans la chaîne pointée par tampon sont terminés par '\0'. Vous devez être sûr que la place suffisante pour coder les résultatsées est disponible.

       

    Valeur renvoyée:

      la longueur de la chaîne construite (sans compter '\0')


    Portabilité:
      système UNIX, DOS, norme ANSI.

    Exemple:

    exemple 1:

    #include <stdio.h>
    #include <math.h> /* pour utiliser M_PI */

    void main(void) {
    char buffer[80];
    int nbc;

    nbc = sprintf(buffer, "Une approximation de Pi : %lf", M_PI );
    puts(buffer);
    printf( "nombre de caractères : %d\n", nbc);
    }

    exemple 2:

    /*
    Dans cet exemple, on génère un format permettant à scanf()
    de lire au plus MAX_CAR caractères, afin d'être sûr que
    le tableau recevant les données soit de taille suffisante
    */

    #include <stdio.h>
    #include <string.h> /* Pour uUtiliser strlen() */

    #define MAX_CAR 10

    void main(void) {
    char tampon[1+MAX_CAR]; char format[80];
    int nbc;

    sprintf( format, "%c%ds", '%', MAX_CAR);
    printf( "Format généré : %s\n", format);

    printf( "Tapez des caractères : ");
    scanf( format, tampon);
    printf("lu : %d caractères\n", strlen(tampon));
    }