三楼错解,如果那样的话,a&nbsp;打印出来就是0而不是1.<br>首先0.5-0.4!=0.1运算是常量运算,在编译期它的数值就算好了,所以看汇编时,没有它的运算汇编,只有一个常量值1的移动汇编。<br>然后就是数值是1是为什么,二楼已经给出正确答案。<br>这是浮点数比较的特殊性,和其它类型的比较的不同地方。
本例中,类型的转换发生在赋值时,而赋值是在最后发生,而不是在运算之前,所以运算还是按浮点数来运算的。
[
本帖最后由 debroa723 于 2009-8-22 21:05 编辑 ]