Spécificateur de format flottant dynamique en C
-
09-12-2019 - |
Question
Existe-t-il un moyen d'avoir un spécificateur de format flottant saisi par l'utilisateur ?Par exemple, si j'imprime ceci.
float c = 15.0123
printf("%.2f", c);
// outputs: 15.01
Comment puis-je attribuer le nombre de décimales à une variable ?Comme:
int n = 3;
float c = 15.0123
printf("%.(%i)f", n, c);
// outputs: 15.012
La solution
La précision peut être précisée par un argument avec l'astérisque *
.C'est ce qu'on appelle une précision fournie par un argument.
float c = 15.0123;
int m = 2;
printf("%.*f", m, c);
Autres conseils
printf("%.*f", n, c);
cela imprimera c avec n places après la virgule.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow