C语言遇到一个小问题了
int i=3;
float f=i;
printf("%f",f);//输出3.000000,没问题
但是下面的代码
int i=3;
printf("%f",i);//这时输出0.000000,有问题,我认为应该还是输出3.000000才对
[解决办法]
[Quote=引用:]
而接下来的四个字节刚好是main保存寄存器的位置,一般来说刚好是0,就拼凑出了0x00000000xxxxxxxx的形态。所以printf会打印出0。printf("%f",(float)i);就好了
很正确。。。。