Section courante

A propos

Section administrative du site

SPRINTF

Imprime une chaine de caractère en format
SVID 3, POSIX, BSD 4.3, ISO 9899 stdio.h

Syntaxe

int sprintf(char *str, const char *format, ...);

Paramètres

Nom Description
str Ce paramètre permet d'indiquer le tampon recevant les données
format Ce paramètre permet d'indiquer le texte à écrire dans le tampon. 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 un chaîne 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.

Description

Cette fonction effectue l'écriture de texte selon un certain format à partir d'un tampon.

Exemple

Voici divers exemple d'affichages de format :

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main() {
  5.  char Temp[255];
  6.  sprintf((char *) &Temp,"Boujour!");
  7.  puts(Temp);
  8.  sprintf((char *) &Temp,"Entier %%i = %i",15);
  9.  puts(Temp);
  10.  sprintf((char *) &Temp,"Hexadecimal %%x = %x",16);
  11.  puts(Temp);
  12.  sprintf((char *) &Temp,"Octal %%o = %o",16);
  13.  puts(Temp);
  14.  sprintf((char *) &Temp,"Chaine de caracteres %%s = %s","message");
  15.  puts(Temp);
  16.  sprintf((char *) &Temp,"Reel %%f = %f",123.45);
  17.  puts(Temp);
  18.  sprintf((char *) &Temp,"Reel %%f = %.2f",123.45);
  19.  puts(Temp);
  20.  return 0;
  21. }

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 - sprintf

Dernière mise à jour : Samedi, le 27 juin 2015