一个很笨的问题,但可能难倒一部人
今日在 用PHP做一个简单的计算时碰到一个怪事:
输入的 除数和被除数 都是整形,但是echo 输出的却是浮点数....怪事
我以为眼镜花了,但仔细检查了一下表达式,确实没错,换个文件重写、重启apache还是不行
最后 只能用函数把他转换后才能 得到整数的结果.
我的猜测是这样的:
输入的整数 默认被认为是浮点数,如:
2==>2.0
被 认为是浮点数有个好处:
精度高,且他是大类型,可以装下小类型,所以PHP默认就会用它
因为类型没有具体的说明,所以 除数和被除数 都隐式地被认为是浮点数,浮点数计算出来当然是浮点数
若 用 强制转换(int) 6/3 应该就是整数了,不用函数来转换
输入的 除数和被除数 都是整形,但是echo 输出的却是浮点数....怪事
我以为眼镜花了,但仔细检查了一下表达式,确实没错,换个文件重写、重启apache还是不行
最后 只能用函数把他转换后才能 得到整数的结果.
我的猜测是这样的:
输入的整数 默认被认为是浮点数,如:
2==>2.0
被 认为是浮点数有个好处:
精度高,且他是大类型,可以装下小类型,所以PHP默认就会用它
因为类型没有具体的说明,所以 除数和被除数 都隐式地被认为是浮点数,浮点数计算出来当然是浮点数
若 用 强制转换(int) 6/3 应该就是整数了,不用函数来转换
...全文
相关推荐
难倒无数人的十大公务员面试题借鉴.pdf
难倒无数人的十大公务员面试题借鉴.pdf
小学数学数学神探难倒警探
小学数学数学神探难倒警探
由“移动支付、网上购物难倒老人”看医疗保险业务经办.pdf
由“移动支付、网上购物难倒老人”看医疗保险业务经办.pdf
TF卡修复工具(很好用的小工具,我们再也不被小T难倒了)
修复TF卡的小工具,只要打开后,看到status——ready,write——ready,就可以修复了
jconn4的jar连接sybase的jdbc驱动
整整找了一下午,才找到的。下载人的需要三个积分,可是我只有一个,俗话说得好,一分钱难倒英雄汉,所以我在这里不为难广大开发者,也祝愿现在仍在使用sybase的公司蓬勃发展!


基础编程

