八戒图片:c++里面,w=(1/4)与 w=0.25有什么区别?如何转换?

来源:百度文库 编辑:神马品牌网 时间:2024/05/03 22:45:33
w 是 double型的

如果w类型为double,w=(1/4)结果w为0.00000000000000,因为1与4为整型常量,计算结果为整型(即0),然后赋值时把计算结果转为双精度为0.00000000000000。w=(double)1/4与w=0.25等价,w都为0.25000000000000。当然不同的环境double的精度也不相同,以上是一般情况。
pright针对不同情况回答得很详细

w=(1/4)=(0)
即先作整型除法,结果为整型,截断小数位。
最终w=0

w=0.25
取决于w的类型
w为整形,0.25隐式转换,w=0
w为浮点型,w=0.25
----------------------------------------------------------------------------------------------------------------------
w为double型:
w=(1/4)=(0)
最终w=0.0d
w=0.25
最终w=0.25d