【发布时间】:2012-08-04 18:50:16
【问题描述】:
可能重复:
How is conversion of float/double to int handled in printf?
main()
{
printf("%f",1);
}
我期望的输出是 1.000000,即 int 1 被向上转换为 double 1.000000,但它给出了 0.000000。为什么会这样?
【问题讨论】:
-
您缺少
printf()的原型。即使有了原型,你的程序仍然会出错。 -
到底为什么会它被转换成双倍?