双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

一个很笨的问题,但可能难倒一部人

csdaa2010 csdaa2010 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
今日在 用PHP做一个简单的计算时碰到一个怪事:
输入的 除数和被除数 都是整形,但是echo 输出的却是浮点数....怪事

我以为眼镜花了,但仔细检查了一下表达式,确实没错,换个文件重写、重启apache还是不行
最后 只能用函数把他转换后才能 得到整数的结果.

我的猜测是这样的:
输入的整数 默认被认为是浮点数,如:
2==>2.0
被 认为是浮点数有个好处:

精度高,且他是大类型,可以装下小类型,所以PHP默认就会用它

因为类型没有具体的说明,所以 除数和被除数 都隐式地被认为是浮点数,浮点数计算出来当然是浮点数
若 用 强制转换(int) 6/3 应该就是整数了,不用函数来转换
...全文
评论 6
收藏 已收藏
分享
返回顶部
csdaa2010
基础编程 21,889 成员 140,329 内容