打印

请教float的存储问题

[复制链接]
1963|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chl00100|  楼主 | 2007-8-15 20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
比如现在有一个float a = 0.12857,在内存中的hex为0x3E03A7DB,现在我想把0x3E03A7DB分字节存到eeprom中,应该怎样实现哪
因为a是可变的,而且变化范围在3-4个数量级,所以用乘以10^n再存的方法不太合适,有没有其他好办法呢,是不是可以利用指针实现呢,谢谢

相关帖子

沙发
computer00| | 2007-8-15 21:02 | 只看该作者

就一个个字节取出来啊

((unsigned char *)(&a))[0]
((unsigned char *)(&a))[1]
((unsigned char *)(&a))[2]
((unsigned char *)(&a))[3]

使用特权

评论回复
板凳
chl00100|  楼主 | 2007-8-15 22:38 | 只看该作者

谢谢OO

看来俺对指针还没理解透

使用特权

评论回复
地板
ayb_ice| | 2007-8-16 08:44 | 只看该作者

现在理解也不迟啊...

使用特权

评论回复
5
xujunchen| | 2007-8-16 12:40 | 只看该作者

不错!用联合也可以.

union float_byte
{
 unsigned char bb[4];
 float ff;
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

307

帖子

0

粉丝