以共用体分解float或者double类型数据为c字符类型数据。可以用于eeprom24c02数据存取。
————阿新。
1 float、 doub le数据分解程序
#inc lude<stdio.h>
#inc lude<string.h>
#inc lude<math.h>main()
{ unsigned char*p,i;union data
{ float b;unsigned char a[4];
}c;c.b=34.526;printf("%f\n",c.b);p=c.a;for(i=0;i<4;i++)
{printf("%d\n",*p);p++;
}
}
小数34.526在计算机存储的的浮点格式为{160,26,10,66}共四个字节。
当数据b为double时记得把b前面的float改为double把数字4改为8。
从上面看出float类型的精度不是高在后面多出了个1 当改为double时精度就高多了。
2 把分解开的字符数据转换合并为float或doub le型。下面以double型为计算当要合并为float时改b的数据类型为double把8改为4并且把unsigned char d[]={23,217,206,247,83,67,65,64}改为d[]={160,26,10,66}.
#inc lude<stdio.h>
#inc lude<string.h>
#inc lude<math.h>main()
{ unsigned char*p,i;union data
{ double b;unsigned char a[8];
}c;unsigned char d[]={23,217,206,247,83,67,65,64}; //此处是34.526在double类型下计算机//存储的数据for(i=0;i<8;i++)
{ c.a[i]=d[i];
}printf("%f\n",c.b);p=c.a;for(i=0;i<8;i++)
{printf("%d\n",*p);p++;
}
}
六一云 成立于2018年,归属于西安六一网络科技有限公司,是一家国内正规持有IDC ISP CDN IRCS电信经营许可证书的老牌商家。大陆持证公司受大陆各部门监管不好用支持退款退现,再也不怕被割韭菜了!主要业务有:国内高防云,美国高防云,美国cera大带宽,香港CTG,香港沙田CN2,海外站群服务,物理机,宿母鸡等,另外也诚招代理欢迎咨询。官网www.61cloud.net最新直销劲爆...
racknerd怎么样?racknerd今天发布了几款美国特价独立服务器的促销,本次商家主推高配置的服务器,各个配置给的都比较高,有Intel和AMD两种,硬盘也有NVMe和SSD等多咱组合可以选择,机房目前有夏洛特、洛杉矶、犹他州可以选择,性价比很高,有需要独服的朋友可以看看。点击进入:racknerd官方网站RackNerd暑假独服促销:CPU:双E5-2680v3 (24核心,48线程)内存...
ZJI发布了9月份促销信息,针对香港华为云线路物理服务器华为一型提供立减300元优惠码,优惠后香港华为一型月付仅450元起。ZJI是原来Wordpress圈知名主机商家:维翔主机,成立于2011年,2018年9月更名为ZJI,提供中国香港、台湾、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册等业务,商家所选数据中心均为国内访问质量高的机房和线路,比如香港阿里云、华为...