标题:读取.dat文件中每四个字节16进制数并转换成float型再存入另外一个文件中,例 ...
只看楼主
guogg119
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-28
结帖率:100%
已结贴  问题点数:20 回复次数:7 
读取.dat文件中每四个字节16进制数并转换成float型再存入另外一个文件中,例如:0x42F0E666 float型为120.45
读取.dat文件中每四个字节16进制数并转换成float型再存入另外一个文件中,例如:0x42F0E666  float型为120.45
搜索更多相关主题的帖子: dat文件 
2012-08-29 23:07
guogg119
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-28
得分:0 
哪位大侠赐教呀
2012-08-30 16:08
guogg119
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-28
得分:0 
哪位大侠帮帮忙呀
2012-08-30 23:38
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:14 
0x42F0E666 和120.45是怎么算出来的,存入另外一个文件中你想怎么存。

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2012-09-02 16:36
guogg119
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-28
得分:0 
4楼的你肯定不明白了,浮点数在内存里以四个字节存储,共32位,有符号位,小数位和指数位。
2012-09-03 14:31
guogg119
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2012-8-28
得分:0 
回复 3楼 guogg119
4楼的你肯定不明白了,浮点数在内存里以四个字节存储,共32位,有符号位,小数位和指数位。

可以把四个字节读到cstring对像中,然后用其成员函数转换成float型么?然后存储以浮点型存到.dat中

不知道我说明白没,谢谢帮忙
2012-09-03 14:35
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:0 
楼主是不是这个意思:
char pMem[4] = {0x42,0xF0,0xE6,0x66};
float *p = (float*)pMem;
printf("%g",*p);

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2012-09-09 12:18
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:0 
我测试了下,和你说的是反的   
unsigned char pMem[4] = {0x66,0xE6,0xF0,0x42};
float *p = (float*)pMem;
printf("%g\r\n",*p);
这样输出才是120.45

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2012-09-09 12:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-380327-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.295741 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved