怎么显示浮点数在内存中的表示啊

linux123456linux 2011-03-03 07:34:55
RT
例如根据IEEE754,double的0.5在内存表示是3fe0000000000000
怎么编程批量显示浮点数在内存中的表示?
...全文
147 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengzhixi 2011-03-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 supermegaboy 的回复:]
对于小端系统:


C/C++ code

#include< stdef.h >

........
double Example = 0.5;
unsigned char *Ptr = ( unsigned char* )&Example;
int i = sizeof( double ) - 1;
for( ; i >= 0; -……
[/Quote]

up
飞天御剑流 2011-03-03
  • 打赏
  • 举报
回复
对于小端系统:


#include< stdef.h >

........
double Example = 0.5;
unsigned char *Ptr = ( unsigned char* )&Example;
int i = sizeof( double ) - 1;
for( ; i >= 0; --i )
printf( "%02X ", Ptr[i] );
.........


大端的话把i倒过来就行了。
yiruirui0507 2011-03-03
  • 打赏
  • 举报
回复
#include <stdio.h>

int main(int argc,char *argv[])
{
double d=0.5;
_int64 *p=(_int64*)&d;
printf("%016I64x",*p);
}
正解
KingWolfOfSky 2011-03-03
  • 打赏
  • 举报
回复

#include <stdio.h>

int main(int argc,char *argv[])
{
double d=0.5;
_int64 *p=(_int64*)&d;
printf("%016I64x",*p);
}
zhangsongcui 2011-03-03
  • 打赏
  • 举报
回复
union DOUBLE
{
double d;
int a[2];
};

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧