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; }
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";
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!