Bonsoir,
j'aurais aimé avoir plus de renseignement sur la precision des float et des doubles. J'ai recherché a droite et a gauche des informations et je suis tombé sur deux defines: FLT_DIG et DBL_DIG qui valent respectivement 6 et 15.
Dans un main de test, j'ai créé un double avec comme valeur: 2147483647.01234567890123456789.
Lorsque je fais un std::cout de ma variable j'obtiens: 2.14748e+09
Cependant je cherche a afficher les nombres apres la virgule. Je fais donc appelle a fixed et a setprecision mais la j'obtiens: 2147483647.012345790863037.
Au bout du 6eme chiffres apres la virgule, j'ai donc des chiffres en random...
Est ce que quelqu'un pourrait me donner plus d'information? Est ce que la valeur de FLT_DIG et de DBL_DIG sont le nombre de chiffre significatif (avant ET apres la virgule) ou bel et bien le nombre de chiffre apres la virgule et dans ce cas pourquoi mon double contient se nombre bizarre?
Merci d'avance
Partager