第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php中浮點轉(zhuǎn)整數(shù),為什么是向下取整,而不是四舍五入?

php中浮點轉(zhuǎn)整數(shù),為什么是向下取整,而不是四舍五入?

PHP
白衣染霜花 2019-03-18 16:55:43
http://php.net/manual/zh/lang... 從浮點型轉(zhuǎn)換 當從浮點數(shù)轉(zhuǎn)換成整數(shù)時,將向下取整。 如果浮點數(shù)超出了整數(shù)范圍(32 位平臺下通常為 +/- 2.15e+9 = 2^31,64 位平臺下,除了 Windows,通常為 +/- 9.22e+18 = 2^63),則結果為未定義,因為沒有足夠的精度給出一個確切的整數(shù)結果。在此情況下沒有警告,甚至沒有任何通知! Note:PHP 7.0.0 起,NaN 和 Infinity 在轉(zhuǎn)換成 integer 時,不再是 undefined 或者依賴于平臺,而是都會變成零。Warning絕不要將未知的分數(shù)強制轉(zhuǎn)換為 integer,這樣有時會導致不可預料的結果。<?phpecho (int) ( (0.1+0.7) * 10 ); // 顯示 7!?>
查看完整描述

2 回答

?
慕少森

TA貢獻2019條經(jīng)驗 獲得超9個贊

PHP中float轉(zhuǎn)int是將小數(shù)位全部棄掉,(0.1+0.7)*10的結果內(nèi)部的表示其實是類似7.9999999999999991118…,于是強行轉(zhuǎn)換為int值時,結果為7。

如果實在要轉(zhuǎn),最好使用round,進行四舍五入避開浮點數(shù)精度的坑

echo (int)((0.7+0.1)*10);   // 輸出7
echo round((0.7+0.1)*10);   // 輸出8

注意:永遠不要相信浮點數(shù)結果精確到了最后一位,也永遠不要比較兩個浮點數(shù)是否相等。如果確實需要更高的精度,應該使用任意精度數(shù)學函數(shù)或者 gmp 函數(shù)。

查看完整回答
反對 回復 2019-03-18
?
梵蒂岡之花

TA貢獻1900條經(jīng)驗 獲得超5個贊

因為php是世界上最好的語言^_^

查看完整回答
反對 回復 2019-03-18
  • 2 回答
  • 0 關注
  • 532 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號