jos*_*im5 5 php floating-point integer
echo (int) ( (0.1+0.7) * 10 );
为什么以上输出7?我理解PHP如何向0舍入,但不是(0.1+0.7) * 10作为一个浮点数计算,然后作为整数转换?
(0.1+0.7) * 10
谢谢!
bco*_*sca 7
当小数位在内部转换为二进制等效值时,精度会有所下降.计算出的值将是7.9+而不是预期的8.
如果您需要高度准确性,请使用GMP系列函数或bcmath库.
归档时间:
15 年,3 月 前
查看次数:
897 次
最近记录: