php - 为什么这个 div 结果在 php 中不同
问题描述
$a = 116278458266472831;
echo intval($a/64); // 1816850910413638
echo intdiv($a, 64); //1816850910413637
当我计算一个大数的基数时,我发现了一些错误,intval($a/64) 的结果大于 intdiv($a, 64),你能告诉我为什么吗?也许你也会写下深层原因,非常感谢。
解决方案
intval 通过截断数字的小数部分将双精度数转换为整数。
在处理某些值时,这可能会产生奇怪的结果。
这就是你进入...638
第一个代码的原因。
返回被除数除以除数的整数商。
这就是你进入...637
第二个代码的原因。因为它只返回整数部分。
推荐阅读
- python - Django Password_reset 电子邮件设置
- npm - 我可以在我的 Grunt 项目中使用 npm 模块吗?
- c++ - 使用 getline 时未处理的异常
- ruby-on-rails - 保存前回调:SystemStackError:堆栈级别太深
- c++ - 插入到双链表中的特定位置
- c# - 是否可以使用 foreach 在 IEnumerable 中创建新对象?
- python - 根据 Python 中的时间间隔自动填充一列
- python - 单击使用 selenium webdriver 的链接
- javascript - 使用js回调函数更新json文件内容
- python - 在 Sphinx 中创建文字文本块