echo 65.7 * 100 % 10//0

echo 65.6 * 100 % 10//9
echo 6560 % 10//0

echo 65.5 * 100 % 10//0

有人可以解释为什么吗?

编辑:

对于人类或非程序员,结果 9 显然是错误的。

编程时如何防止这个"error"

最佳答案

因为浮点中的 65.6 实际上是 65.6 的近似值。它实际上略小于 65.6 ,即 65.5999 或类似的。

假设我对实际值的疯狂猜测是正确的,您有 6559.9 ,它是模数运算符的 stripped to 6599 ,然后除以 10 得到余数 9。

关于php - 为什么 65.6*100%10 等于 9,而不是 PHP 中的 0?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13339725/

10-10 22:40