Partager via


Spécification de largeur printf

Dans une spécification de format, le deuxième champ facultatif est la spécification de la largeur. L'argument width est un entier décimal non négatif qui contrôle le nombre minimal de caractères qui sont générés. Si le nombre de caractères dans la valeur de sortie est inférieure à la longueur spécifiée, des espaces sont ajoutés à gauche ou à droite des valeurs , selon que l'indicateur gauche d'alignement (-) est spécifié ou non- jusqu'à ce que la largeur minimale soit atteinte. Si width est préfixé par 0, des zéros non significatifs sont ajoutés aux conversions de type entier ou de type nombre à virgule flottante, jusqu'à ce que la largeur minimale soit atteinte, sauf lorsque la conversion est vers un infini ou vers un NAN.

La spécification de largeur ne provoque jamais la troncature d'une valeur. Si le nombre de caractères dans la valeur de sortie est supérieur à la longueur spécifiée, ou si width n'est pas spécifié, tous les caractères de la valeur sont générés, en fonction de la spécification de précision.

Si la spécification de largeur est un astérisque (*), un argument int de la liste d'arguments fournit la valeur. Dans la liste des arguments, l'argument de width doit précéder la valeur qui est mise en forme, comme illustré dans l'exemple suivant :

printf("%0*f", 5, 3); /* 00003 is output */

Une valeur width manquante ou petite dans une spécification de format n'entraîne pas la troncation d'une valeur de sortie. Si le résultat d'une conversion est plus important que la valeur width, le champ peut être développé pour contenir le résultat de conversion.

Voir aussi

Référence

printf, _printf_l, wprintf, _wprintf_l

Syntaxe de spécification de format : fonctions printf et wprintf

Directives de balise

Spécifications de précision

Spécification de taille

Caractères du champ de type printf