请教一个关于类型float的问题
float temp=2.0;
float *p=temp;
char buf[4];
buf[0]=*(char*)p;
buf[1]=*((char *)p+1);
buf[2]=*((char *)p+2);
buf[3]=*((char *)p+3);
则有
buf[0]=0;
buf[1]=0;
buf[2]=0;
buf[3]=0x40;
不知道float 这个类型值是怎么安排bit位的 ,我查了一下:ieee float类型为32个bit位,有高-〉低依次是 1个bit位表符号位,8个阶码,23个尾数,但这样也是得不出结果阿?
求助!!!