+ -
当前位置:首页 → 问答吧 → 浮点数转换无符号整型问题

浮点数转换无符号整型问题

时间:2011-12-05

来源:互联网

请问,怎样将一个浮点型数据,转换为三个字节无符号整型?

因为通信帧要求,数据成员为三字节无符整型,现在想把浮点数放到帧里,多谢各位指教!

作者: youhao1999   发布时间: 2011-12-05

不能,浮点型数据按照ieee标准得4个字节啊

作者: Demon__Hunter   发布时间: 2011-12-05

sprintf 将float转化成字符串,然后sscanf字符串中提取整数。

作者: dizuo   发布时间: 2011-12-05

2楼 ++

作者: yuegeman   发布时间: 2011-12-05

三字节无符整型 还是 三字节 unsigned char

问题是在此协议下你根本不应该产生一个 float, 比较好的方法是与上位机定制一个约定,比如

1000 表示 100.0( 或 10.00 )之类

作者: AnYidan   发布时间: 2011-12-05

定点小数
比如你三个字节代表bbbbbbbb bbbbbbbb.bbbbbbbb
0,1~65535.(0,1/256~255/256)

作者: zhao4zhong1   发布时间: 2011-12-05

需求是这样的:
上位机从USB每5ms收到6个浮点数据比如0.00005,0.00004...现在要把6个浮点数据封装成帧从com发送出去

帧格式包含:帧头,数据长度,ID,数据成员,等等

数据成员为6个数据,每个数据对应为三个字节的无符号整型,unsigned int

该怎么变换?浮点数先放大若干倍变为整数吗?

作者: youhao1999   发布时间: 2011-12-05

该回复于2011-12-05 14:31:39被管理员删除

  • 对我有用[0]
  • 丢个板砖[0]
  • 引用
  • 举报
  • 管理
  • TOP
#8楼 得分:0回复于:2011-12-05 14:39:13
根据你浮点数据实际可能的取值范围先放大若干倍变为整数

作者: youhao1999   发布时间: 2011-12-05

热门下载

更多