float转char

将浮点型a转换为4个字符型c[4](可以通过串口发送),再转换为浮点型b

输出:123456.000000


#include "stdio.h"

main()

{

//float转char

float a = 123456;

float b = 0;

int i = 0;

char *pc = (char*)&a;

for(i=0; i<4; i++)

c[i] = *(pc+i);

//char转float

pc = c

b = *(float*)pc;

printf("%f", b);

}


自己使用总结:在float转char(UI中)之后,再char转回float(Firmware中)时,如果转回错误可以将char内4个byte的顺序颠倒一下,再char转float。


转自:http://wenku.baidu.com/link?url=P9BQPpaOEaDhFtbEoxYn12sqZJdpLZ2ya1UmQTaeDXf3gEsj51a0at9hLuiy475LdCgP7l4LXz0NhKIMgKOQuO67qrxVWBRpsJQAuqYURSK


另一篇文章:

浮点(FLOAT)转换为CHAR

  float wTemp=3.3;
   char sBuf[4];
   char* temp;
   memset(sBuf,0,sizeof(sBuf));
   temp=(char*)(&wTemp);
   sBuf[0] = temp[0] ;
   sBuf[1] = temp[1];
   sBuf[2] = temp[2];
   sBuf[3] = temp[3]; 

CHAR转换为浮点(FLOAT)

  char sBuf[4];
  sBuf[0]=0x33;
  sBuf[1]=0x33;
  sBuf[2]=0x53;
  sBuf[3]=0x40;
  float *w=(float*)(&sBuf);


转自:http://blog.youkuaiyun.com/sijigang/article/details/1546117


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值