浮点型与字符型转换c语言

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浮点型与字符型转换
统一IEEE754标准
//32位数据转换为4个八位数据
void float2char(float f,unsigned char *s)//float可改为任意32位数据,直接复制下来使用
{
unsigned char *p;
p = (unsigned char *)&f;
*s=*p;
*(p+1)=*(s+1);
*(p+2)=*(s+2);
*(p+3)=*(s+3);
return i;
}
void floattest(void)//测试函数
{Fra Baidu bibliotek
float i=1.2345,k;//i为需转换的32位数据
char data[4],j;//data为4个8位数据
for(i=1.0;i<10.0;i+=0.0625)
{
float2char(i,&data[0]);//拆分数据
for(j=0;j<4;j++)
printf("data=%d \n",data[j]);
k=char2float(&data[0]);//整合数据
printf("k=%f \n",k);
}
}
*(s+1)= *(p+1);
*(s+2)=*(p+2);
*(s+3)=*(p+3);
}
//4个八位数据转换为32位数据
float char2float(unsigned char *s)//不可修改
{
float i;
unsigned char *p;
p=(unsigned char *)&i;
*p=*s;
相关文档
最新文档