【发布时间】:2011-09-03 18:35:50
【问题描述】:
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int x, *ptr_x;
float f , *ptr_f;
ptr_f = &f;
ptr_x = &x;
*ptr_x = 5;
*ptr_f = 1.5; //printf("%d %f\n", f,x);
printf ("\n\nxd = %d \t xf = %f \n ff = %f \t fd = %d", x,x,f,f);
return 0;
}
ff = %f 的输出不是预期的。
xd = 5 xf = 0.000000
ff = 0.000000 fd = 1073217536
这段代码的重点是显示如果使用 %d 打印浮点值并且使用 %f 打印 int 值会发生什么。
为什么即使我使用 %f 也无法正确打印浮点值?
【问题讨论】: