[原创]不知道怎么保存浮点数?

2020-02-09 09:35发布

用C语言编程,单片机的E2_ROM怎么保存浮点数啊?我在网上搜了,没有找到,不知道有哪位朋友曾经有过类似的使用情景,请赐教,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
china_china
1楼-- · 2020-02-09 13:44
用联合。比如

union
{
     float aaa;
     uchar bbb[4];     
};

直接将数据读入aaa变量中,保存时将bbb[]数组存入即可。读出时读到bbb[]中,aaa就是你要的数了。
zhang_sir67799
2楼-- · 2020-02-09 18:16
DIN,高手
zxq6
3楼-- · 2020-02-09 18:51
学习
soulmate
4楼-- · 2020-02-09 21:02
 精彩回答 2  元偷偷看……
pchina
5楼-- · 2020-02-10 00:21
TO:1楼
谢谢,采用
只是脑袋短路,没想起来,其实我天天在这样在用!
xielihong
6楼-- · 2020-02-10 05:24
管他什么鸟点,不就是内存数据吧,一个指针指过去,再读个sizeof(float),什么鸟都跑不了
float a;
char buf[128]; //实际中可能并不需要缓冲区,这时只做演示
memcpy(buf,(char *)&a,sizeof(a));// sizeof(a) 和 sizeof(float) 在这里是一样的,随便


(char *)&a  数据的开始
sizeof(a)   数据的长度

还有,float未必就是4个字节的,还是用sizeof保险点

一周热门 更多>