C ++ printf ()

prototype printf ()

int printf (const char * format, ...);

le printf() function écrit la chaîne pointée par format dans stdout. Le format de chaîne peut contenir des spécificateurs de format commençant par% qui sont remplacés par les valeurs des variables qui sont passées au printf() fonctionnent comme des arguments supplémentaires.

Il est défini dansEn tête de fichier.

Paramètres de printf ()

  • format: Pointeur vers une chaîne terminée par null qui est écrite dans le flux de fichiers. Il se compose de caractères avec des spécificateurs de format facultatifs commençant par%.

    Les spécificateurs de format sont remplacés par les valeurs des variables respectives qui suivent la chaîne de format.

    Le spécificateur de format comprend les parties suivantes:

    • Un signe% en tête
    • Drapeaux: Un ou plusieurs indicateurs facultatifs qui modifient le comportement de conversion.
      • -: Justifiez à gauche le résultat dans le champ. Par défaut, il est justifié à droite.
      • +: Le signe du résultat est attaché au début de la valeur, même pour les résultats positifs.
      • Espace: s’il n’y a pas de signe, un espace est attaché au début du résultat.
      • #: Une autre forme de conversion est effectuée.
      • 0: Il est utilisé pour les nombres entiers et flottants. Les zéros non significatifs sont utilisés pour compléter les nombres au lieu de l’espace.
    • Largeur: Valeur facultative * ou entière utilisée pour spécifier un champ de largeur minimale.
    • Précision: Un champ facultatif composé d’un. suivi de * ou entier ou rien pour spécifier la précision.
    • Longueur: Un modificateur de longueur facultatif qui spécifie la taille de l’argument.
    • Prescripteur: Un spécificateur de format de conversion. Les spécificateurs de format disponibles sont les suivants:
      Spécificateur de format La description
      % Impressions%
      c Écrit un seul caractère
      s Écrit une chaîne de caractères
      d ou i Convertit un entier signé en représentation décimale
      o Convertit un entier non signé en représentation octale
      X ou x Convertit un entier non signé en représentation hexadécimale
      u Convertit un entier non signé en représentation décimale
      F ou f Convertit un nombre à virgule flottante en représentation décimale
      E ou e Convertit un nombre à virgule flottante en notation d’exposant décimal
      Un ou un Convertit un nombre à virgule flottante en exposant hexadécimal
      G ou g Convertit un nombre à virgule flottante en notation d’exposant décimal ou décimal
      n Renvoie le nombre de caractères écrits jusqu’à présent par cet appel à la fonction. Le résultat est écrit sur la valeur pointée par l’argument
      p Écrit une séquence de caractères définie par l’implémentation définissant un pointeur.

      Ainsi, le format général du spécificateur de format est: %[flags][width][.precision][length]specifier 

  • …: Autres arguments supplémentaires spécifiant les données à imprimer. Ils se produisent dans une séquence selon le spécificateur de format.

printf () Valeur de retour

En cas de succès, le printf() La fonction renvoie le nombre de caractères écrits. En cas d’échec, il renvoie une valeur négative.

Exemple 1: Fonctionnement de la fonction printf ()

 #include <cstdio>

int main()
{
    int x = 5;
    char my_name[] = "Lincoln";

    printf("x = %d \n", x);
    printf("My name is %s \n", my_name);
    
    return 0;
} 

Lorsque vous exécutez le programme, la sortie sera:

x = 5
Je m'appelle Lincoln

Exemple 2: Plus d’exemples sur printf ()

 #include <cstdio>

int main()
{
char ch = 'a';
float a = 5.0, b = 3.0;
int x = 10;

printf("%.3f / %.3f = %.3f \n", a,b,a/b);
printf("Setting width %*c \n",5,ch);
printf("Octal equivalent of %d is %o \n",x,x);

return 0;
}