Bonjour, j'ai un problème assez ennuyeux lorsque je convertit un double en int, voilà un exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
double tmp = 123.456;
tmp *= 10;
tmp *= 10;
tmp *= 10;
cout << (int) tmp << endl;
Bizarrement, cela affiche 123455 et non 123456
Encore plus bizarre, si je fais directement (int) 123456.0, j'obtiens bien 123456, et ça donne bien 123456 avec (int) (123.456 * 1000) aussi
Comment résoudre ce problème ?