请教double -∞的位表示

Golden_Shadow 2011-07-06 06:23:41
符号位:1
指数位:11111111111
小数位:0000000000000000000000000000000000000000000000000000
double negativeInfinity = 0xFFF00000 ;
-----------------------------
我是这么认为的,结果不对.
请高人赐教.
...全文
103 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Golden_Shadow 2011-07-08
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hpsmouse 的回复:]
引用楼主 golden_shadow 的回复:
double negativeInfinity = 0xFFF00000 ;
-----------------------------
我是这么认为的,结果不对.

你把一个 unsigned int 类型的整数 0xFFF00000 (按数值)转换成 double,结果当然不对……

C/C++ code
#include <cs……
[/Quote]
万分感谢!!!
2011-07-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 golden_shadow 的回复:]
double negativeInfinity = 0xFFF00000 ;
-----------------------------
我是这么认为的,结果不对.
[/Quote]
你把一个 unsigned int 类型的整数 0xFFF00000 (按数值)转换成 double,结果当然不对……
#include <cstdio>
#include <stdint.h>

int main()
{
union
{
struct
{
uint32_t low;
uint32_t high;
};
double dblValue;
} value = {{0, 0xFFF00000}};
printf("%f\n", value.dblValue);
return 0;
}
Golden_Shadow 2011-07-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 alweeq86 的回复:]
看下IEEE 754就明白了
[/Quote]
我觉得你说的不对.
我迫切地期待答案.
alweeq86 2011-07-06
  • 打赏
  • 举报
回复
看下IEEE 754就明白了
alweeq86 2011-07-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 alweeq86 的回复:]

应该是:
符号位:1
指数位:00000000000
小数位:0000000000000000000000000000000000000000000000000000
=-1*2^2047
[/Quote]
不好意思=-1*2^-1023
alweeq86 2011-07-06
  • 打赏
  • 举报
回复
应该是:
符号位:1
指数位:00000000000
小数位:0000000000000000000000000000000000000000000000000000
=-1*2^2047

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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