以共用体分解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++;
}
}
春节期间我们很多朋友都在忙着吃好喝好,当然有时候也会偶然的上网看看。对于我们站长用户来说,基本上需要等到初八之后才会开工,现在有空就看看是否有商家的促销。这里看到来自HMBcloud半月湾服务商有提供两款春节机房方案的VPS主机88折促销活动,分别是来自洛杉矶CN2 GIA和日本CN2的方案。八八折优惠码:CNY-GIA第一、洛杉矶CN2 GIA美国原生IP地址、72小时退款保障、三网回程CN2 ...
hypervmart怎么样?hypervmart是一家国外主机商,成立于2011年,提供虚拟主机、VPS等,vps基于Hyper-V 2012 R2,宣称不超售,支持linux和windows,有荷兰和英国2个数据中心,特色是1Gbps带宽、不限流量。现在配置提高,价格不变,性价比提高了很多。(数据中心不太清楚,按以前的记录,应该是欧洲),支持Paypal付款。点击进入:hypervmart官方网...
昨天我们很多小伙伴们应该都有看到,包括有隔壁的一些博主们都有发布Vultr商家新的新用户注册福利活动。以前是有赠送100美元有效期30天的,这次改成有效期14天。早年才开始的时候有效期是60天的,这个是商家行为,主要还是吸引到我们后续的充值使用,毕竟他们的体验金赠送,在同类商家中算是比较大方的。昨天活动内容:重新调整Vultr新注册用户赠送100美元奖励金有效期14天今天早上群里的朋友告诉我,两年...