浮点数转字节组存储
来源:互联网 发布:js获取页面传递的参数 编辑:程序博客网 时间:2024/06/18 14:37
浮点数转字节组存储,主要用于嵌入式等一些特殊情况,比如串口传数据,其主要思路是将浮点数(通常为4字节),每个字节单独传送,到接收端再将它们组合成一个浮点数即可。在C语言中,我们可以采用union方式实现。
union f_data
{
float fdata;
unsigned char cdata[4];
}data; //单精度的浮点数,便于拆分字节
//如果是双精度的则定义为
//union f_data
//{
//double fdata;
//unsigned char cdata[8];
//}data;
//下面为发送
void send_data(void)
{
data.fdata = 3.14159;
send(data.cdata[0]);
send(data.cdata[1]);
send(data.cdata[2]);
send(data.cdata[3]);
}
//则接收程序如下
void receive_data(void)
{
data.cdata[0] = receive_byte();
data.cdata[1] = receive_byte();
data.cdata[2] = receive_byte();
data.cdata[3] = receive_byte();
}
//接收到的数据为data.fdata;
特别注意:
如果发送端和接收端遵循的浮点规则相同,发送和接收的顺序必须一样,顺序、倒序甚至是乱序都无所谓,只要发送和接收两者相同即可
如果两台机器浮点数遵循的标准不一样,则需要调整一些接收字节的顺序
- 浮点数转字节组存储
- 数据在计算机中的存储(字节序,浮点数)
- 3字节浮点数
- 浮点数存储格式
- 浮点数 存储
- 浮点数的存储
- 浮点数的存储
- 浮点数存储格式
- 浮点数的存储
- 浮点数的存储
- 浮点数存储
- 浮点数存储格式
- 浮点数 存储方式
- 浮点数的存储
- 浮点数的存储
- 浮点数存储原理
- 浮点数存储规则
- 浮点数的存储
- linuc下库操作
- Java反射机制的原理及在Android下的简单应用2
- hdu 4390 Number Sequence(容斥原理)
- ACM学习规划
- java关键字catch
- 浮点数转字节组存储
- Spring对jdbc的支持
- 寻找最长递增子序列
- linux 软中断(经典)
- 模式学习之单例模式:Singleton
- valgrind 的使用简介
- 分清Java抽象方法、抽象类以及接口
- 用递归的方法输出1到100
- C++ 整数转化成字符串 字符串转换为整数