我有以下代碼:$waitTimeInMs = random_int(500, 1000);// 1E3 = 10 to the power of 3 = 1000echo gettype($waitTimeInMs) .'|'.gettype($waitTimeInMs * 1E3) . '|' . gettype($waitTimeInMs * 1000) .'|' . $waitTimeInMs * 1E3;這返回integer|double|integer|759000。因此,實際上:random_int()返回一個int;乘以1E3返回a double;乘以1000返回int;那么,為什么乘以1E3返回雙精度值而不是intif 1000 = 1E3?
2 回答

嚕嚕噠
TA貢獻1784條經驗 獲得超7個贊
您的假設是錯誤的:
// 1E3 = 10 to the power of 3 = 1000
1E3
是的簡寫形式+1.000E3
。根據定義,它是科學計算機符號中的浮點數:
// 1.23E4 => 1.23 * 10^4 // computer => scientific notation of a real number
順便提一句: 0.123e5 === 1.23e4 === 12.3e3 === 123e2 === 12300e0 === 12300.0
- 2 回答
- 0 關注
- 363 瀏覽
添加回答
舉報
0/150
提交
取消