首頁 > 問答 > 主體
譬如把float類型的2.0000000000轉化為int,底層儲存的應該是1.999999999999999這樣的吧,有精度限制的,所以當我把這個數轉int的時候,覺得會變成1(丟棄小數部分了) 但測試了幾種語言,都還是正確的(php,java,go,js)php:js:
#go:
#java:
滿天的星座2017-06-12 09:21:20
2.0是可以被浮點數精確表達的 這個數字不應該出問題
2.0
我想大声告诉你2017-06-12 09:21:20
小數的存儲用科學記數法存儲,並不是1.999999...,在強轉的過程中是做處理的,不是直接轉換個類型
漂亮男人2017-06-12 09:21:20
一般來說都是低精度轉高精度,例如int->float,高精度轉低精度,是要丟失精度,數據結果可能會變得很詔異的。
阿神2017-06-12 09:21:20
幾個經典的例子
(int)(0.57 * 100)
(int)((0.1+0.7)*10)
世界只因有你2017-06-12 09:21:20
沒啥太實際的意義,假如真的是你這樣想的情況運作的話,設計這門語言的人肯定會考慮到的
具體了解需要一定的彙編原理,所以不要太鑽牛角尖啦
巴扎黑2017-06-12 09:21:20
可以問一下,你這個程式面板是哪裡下載的嗎?好像不錯