link吧 关注:602贴子:3,955
  • 0回复贴,共1

求教各位大神指点我:怎么输出实数1.0在内存中存储的32位二进制

取消只看楼主收藏回复

我想看看浮点数1.0在内存的存储情况,就用c语言编写了一个程序,结果出来跟我预想的很不一样,亲们指点指点我哪里出错了
#include <stdio.h>
int main ( )
{
float f =0x10;
char * p = (char *)(&f);
printf("%x %x %x %x",*(p + 3), *(p + 2), *(p + 1), *(p));
getchar();
return 0;
}
运行结果为:3f ffffff80 0 0
为什么次高字节变成32位了呢?


IP属地:山东1楼2021-10-14 12:45回复