double与float的转换

分析一次double强转float的翻车原因

  • float有效位:最多可表示24个二进制位,224=223+223-1=16777215
  • 在表示整数时,当整数部分的位数大于24时,就会出现整数截断的现象,所以作者的83459338在存储位float,再取出时会成为83459336的现象。
  • 待表示的数值,不论小数还是整数,有效位数在0-16777215之间的都不会发生截断,可正确表示,大于16777215数值会发生低位截断。
  • 该低位截断对小数数值影响不大,只是有效数字的数目减少,但是对整数数值的影响较大
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章