float chang to bytes

来源:互联网 发布:淘宝买家如何申请换货 编辑:程序博客网 时间:2024/04/30 16:40

byte array[4];

 

float n=2.58;
 int   b=0;

 

 f2bytes(&n);

 b=bytes2f(array);


 float z=*((float *)&b);

 

void f2bytes(float *p)
{
 int x=*((int *)p);
 for(int i=0;i<4;i++)
 {
  array[i]=(char)(x>>8*i & 0xff);
 }
}

 

int bytes2f(char pArray[4])
{
 int x=0;

for(int i=0;i<4;i++)
 {
  x |= pArray[i]<<8*i & 0xff<<8*i;
 }
 return x;
}