16位字节和float类型互转

16位字节和float类型互转

  #include "stdio.h"
  float ByteToFloat(unsigned short* b)//使用取地址的方法进行处理   数组变量的第一个字的地址
  {
      unsigned short  byteArry[2] = {0};
      byteArry[0]=*b;
      byteArry[1]=*(b+1);
      return *((float*)byteArry);
  } 
  void FloatToByte(float fa,unsigned short *a1)//使用取地址的方法进行处理   数组变量的第一个字的地址
  {
      
      unsigned short  farray[2] = {0};
      *(float*)farray = fa;
      *a1= farray[0];
      *(a1+1)= farray[1];
  } 
  unsigned short Reg[25]={0};
  int main(void)
  {
   FloatToByte(0.24,&Reg[20]); 
   printf("%x\n%x\n",Reg[20],Reg[21]);
   //printf("%f",ByteToFloat(&farray));
   //ByteToFloat(&Reg[20]);
   printf("%f\n",ByteToFloat(&Reg[20]));
   return (0);
  }
上一篇:正则校验,中间不能连续出现


下一篇:获取href 和src打开的jsp页面携带的参数