【发布时间】:2014-05-05 19:11:02
【问题描述】:
为什么在我运行C代码的时候会这样
float x = 4.2
int y = 0
y = x*100
printf("%i\n", y);
我得到 419 回来?不应该是420吗? 这让我很难过。
【问题讨论】:
-
典型的浮点精度问题。如果
x*100以419.999981出现,则将其分配给y会将其截断为419。
标签: c math floating-point