Partager via


Spécification de précision

Dans une spécification de format, le troisième champ facultatif est la spécification de précision.Il se compose d'un point (.) suivie d'un entier décimal non négatif qui, selon le type de conversion, spécifie le nombre de caractères de chaîne, le nombre de décimales, ou le nombre de chiffres significatifs à la sortie.

Contrairement au spécification de largeur, la spécification de précision peut provoquer l'un ou l'autre de troncation de la valeur de sortie ou de l'arrondi d'une valeur à virgule flottante.Si precision est spécifié comme 0 et la valeur à convertir est 0, le résultat n'est pas sortie de caractères, comme illustré dans cet exemple :

printf( "%.0d", 0 ); /* No characters output */

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

printf( "%.*f", 3, 3.14159265 ); /* 3.142 output */

Le type détermine la traduction d' precision ou la précision par défaut lorsque precision est omis, comme indiqué dans le tableau suivant.

Comment les valeurs de précision affectent le type

Type

Signification

Par défaut

a, A

La précision indique le nombre de chiffres après le point.

La précision par défaut est 6.Si la précision est 0, aucune virgule décimale n'est imprimée à moins que la balise d' # est utilisée.

c, C

La précision n'a aucun effet.

Le caractère est imprimé.

d, i, u, o, x, X

La précision indique le nombre minimal de chiffres à imprimer.Si le nombre de chiffres dans l'argument est moins qu' precision, la valeur de sortie est remplie à gauche avec des zéros non significatifs.La valeur n'est pas tronquée lorsque le nombre de chiffres dépasse precision.

La précision par défaut est 1.

e, E

La précision indique le nombre de chiffres à imprimer après la virgule décimale.Le dernier chiffre imprimé est arrondi.

La précision par défaut est 6.Si precision est 0 ou le point (.) apparaît sans le nombre suivant, aucune virgule décimale n'est imprimée.

f

La valeur de précision indique le nombre de chiffres après la virgule décimale.Si une virgule décimale apparaît, au moins un chiffre s'affiche avant celui-ci.La valeur est arrondie le nombre approprié de chiffres.

La précision par défaut est 6.Si precision est 0, ou si le point (.) apparaît sans le nombre suivant, aucune virgule décimale n'est imprimée.

g, G

La précision indique le nombre maximum de chiffres significatifs imprimés.

Six chiffres significatifs sont imprimés, et tous les zéros de fin sont tronqués.

s, S

La précision indique le nombre maximal de caractères à imprimer.Les caractères au-dessus d' precision ne sont pas imprimés.

Les caractères sont imprimés jusqu'à ce qu'un caractère Null est produit.

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écification de la largeur de printf

Spécification de taille

type de caractères printf de champ