【发布时间】:2012-08-17 09:34:06
【问题描述】:
请解释一下这两段代码背后的输出/概念。
float x;
x=(float)3.3==3.3;
printf("%f",x);
上面的输出是0.000000
float x;
x=(float)3.5==3.5;
printf("%f",x);
上面的输出是 1.000000
【问题讨论】:
-
以二进制形式写入
3.3和3.5。请记住double比float具有更高的精度。 -
我不知道您将 bool 值分配给 float 变量背后的概念是什么。
-
另外:总是使用
double;不要无缘无故使用float(因为老师说的不是好理由)
标签: c floating-point type-conversion