php - J'ai une question sur la conversion de type lors de la conversion du type float en int, j'ai pensé qu'il pourrait y avoir un problème, mais le résultat n'est pas le cas ?
过去多啦不再A梦
过去多啦不再A梦 2017-06-12 09:19:20
0
6
805

Par exemple, si le type float 2.0000000000 est converti en int, le stockage sous-jacent doit être 1.999999999999999. Il y a une limite de précision, donc lorsque je convertis ce nombre en int, je pense qu'il deviendra 1 (la partie décimale est supprimée)
. Mais j'ai testé plusieurs langages et ils sont tous corrects (php, java, go, js)
php:

js:

aller :

java :

过去多啦不再A梦
过去多啦不再A梦

répondre à tous(6)
滿天的星座

2.0 peut être exprimé avec précision par des nombres à virgule flottante. Il ne devrait y avoir aucun problème avec ce nombre

.
我想大声告诉你

Les décimales sont stockées en notation scientifique, pas 1,999999..., elles sont traitées lors du transfert forcé, pas directement converties en type

漂亮男人

D'une manière générale, lors de la conversion d'une faible précision en haute précision, comme int->float, lors de la conversion d'une haute précision en basse précision, vous perdrez en précision et les résultats des données peuvent devenir très surprenants.

阿神

Quelques exemples classiques

(int)(0.57 * 100)

(int)((0.1+0.7)*10)

世界只因有你

Cela n'a aucune signification pratique. Si cela fonctionne vraiment comme vous le pensez, la personne qui a conçu ce langage le prendra certainement en considération

Une compréhension détaillée nécessite certains principes d’assemblage, alors ne vous laissez pas trop emporter

巴扎黑

Puis-je vous demander où vous avez téléchargé ce panneau de programmation ? Ça a l'air bien

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal