Maison > développement back-end > C++ > Pourquoi `std::cout.precision()` n'affiche-t-il pas les zéros de fin comme prévu ?

Pourquoi `std::cout.precision()` n'affiche-t-il pas les zéros de fin comme prévu ?

Susan Sarandon
Libérer: 2024-11-11 08:26:02
original
323 Les gens l'ont consulté

Why Doesn't `std::cout.precision()` Display Trailing Zeros as Expected?

Utilisation correcte de std::cout.precision() pour l'affichage du zéro final

La précision spécifiée à l'aide de std::cout.precision( ) détermine le nombre de décimales à inclure lors du formatage d'un nombre à virgule flottante. Cependant, dans certains cas, les zéros de fin peuvent ne pas s'afficher comme prévu.

Considérez l'extrait de code suivant :

Ce code tente d'afficher le résultat de la division de deux entiers sous forme de nombre flottant. -numéro de points avec une précision de quatre décimales. Cependant, la sortie affiche « 0,5 » au lieu du « 0,5000 » attendu. Cela se produit car les types de données entiers sont implicitement convertis en virgule flottante lors de l'exécution de la division, mais la précision n'a pas été spécifiquement appliquée à la conversion d'entier en flottant.

Pour afficher correctement les zéros de fin, un paramètre supplémentaire manipulateur, std::fixed, doit être utilisé avec std::cout:

Le manipulateur std::fixed demande à std::cout de générer des nombres à virgule flottante en notation à virgule fixe, qui inclut zéros à droite. Le manipulateur std::setprecision(4) spécifie que la sortie doit avoir une précision de quatre décimales.

En incorporant le manipulateur std::fixed, la sortie de l'extrait de code affiche désormais correctement les zéros à droite, ce qui entraîne en "0,5000" comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal