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

Pourquoi `std::cout.precision()` n'imprime-t-il pas les zéros de fin par défaut ?

Patricia Arquette
Libérer: 2024-11-09 04:30:01
original
1010 Les gens l'ont consulté

Why Does `std::cout.precision()` Not Print Trailing Zeros By Default?

Comprendre std::cout.precision() et les zéros de fin

std::cout.precision() est une fonction utilisée pour contrôler le nombre de décimales affichées pour les valeurs à virgule flottante. Cependant, dans certains scénarios, les zéros de fin peuvent ne pas être imprimés comme prévu.

Considérez l'extrait de code suivant :

#include <iostream>
#include <stdlib.h>
int main()
{
  int a = 5;
  int b = 10;
  std::cout.precision(4);
  std::cout << (float)a / (float)b << "\n";
  return 0;
}
Copier après la connexion

Ce code imprime 0,5 au lieu du 0,5000 attendu. Cela n'est pas dû aux types de données entiers d'origine, mais plutôt à l'absence de suppression des zéros de fin par défaut.

Pour afficher correctement les zéros de fin, le manipulateur std::fixed doit être utilisé :

std::cout << std::fixed;
std::cout << std::setprecision(4);
std::cout << (float)a / (float)b << "\n";
Copier après la connexion

Avec cet ajout, le code affichera désormais 0,5000 comme prévu. Le manipulateur std::fixed spécifie que la valeur à virgule flottante doit être formatée avec un nombre fixe de décimales, garantissant que les zéros à droite sont conservés.

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