#include<stdio.h>
int main(void)
{
int a=1;
float b=1.0;
float c=0.00000003;
float d=123456789.0;
printf("%f\n%d\n%d\n%d\n",a,b,c,d);
return 0;
}
输出结果:
0.000000
1072693248
536870912
1046485803
解释如下:
整型和浮点型float在内存存储都是4个字节
整型数据1在内存中是这样存储的00000000 00000000 00000000 00000001(此处为了方便理解,用原码解释)
浮点型是严格按照IEEE754标准存储的
所以整型数据1在内存中的存储数据当作浮点数来看,是一个非常之小的一个数据。所以输出0。