double與float的轉換

分析一次double強轉float的翻車原因

  • float有效位:最多可表示24個二進制位,224=223+223-1=16777215
  • 在表示整數時,當整數部分的位數大於24時,就會出現整數截斷的現象,所以作者的83459338在存儲位float,再取出時會成爲83459336的現象。
  • 待表示的數值,不論小數還是整數,有效位數在0-16777215之間的都不會發生截斷,可正確表示,大於16777215數值會發生低位截斷。
  • 該低位截斷對小數數值影響不大,只是有效數字的數目減少,但是對整數數值的影響較大
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章