Existe-t-il un moyen de définir le nombre "minimum" de décimales qu'un std :: ostream va générer?Définition du nombre minimal de décimales pour la précision de std :: ostream
Par exemple, dire que j'ai deux variables doubles inconnues que je veux imprimer (valeurs ajoutées ici pour titre d'illustration):
double a = 0;
double b = 0.123456789;
je peux mettre ma précision décimale maximale de sorte que la sortie I b
exactement
std::cout << std::setprecision(9) << b << std::endl;
>>> 0.123456789
y at-il un moyen de définir une précision « minimum » (un nombre minimum de décimales), tout en conservant la précision « maximum », de sorte que
std::cout << a << std::endl << b << std::endl;
rendements
0.0
0.123456789
pas
0
0.123456789
?
Merci! Phil
la réponse courte à cette question est "Non". Le flux n'a qu'un seul réglage de précision, sans possibilité de différencier la précision maximale et minimale. Merci à tous pour vos conseils généreux!
Lisez attentivement la question. Phil veut un MINIMUM de 1 chiffre de précision après le point décimal, mais plus s'il y a des chiffres non-zéro. – Oddthinking
@Phil: Vous trouverez peut-être http://stackoverflow.com/questions/2475642/how-to-achieve-the-following-c-output-formatting utile. –
Merci Roger. C'est très utile. Votre exemple de formateur ressemble à la bonne façon de procéder. –