#include <stdio.h>
int main()
{
unsigned char i;
float floatVariable=3.141592611;
float floatable;
unsigned char charArray[4];
unsigned char *pdata;
pdata= (unsigned char*)&floatVariable; //把float类型的指针强制转换为unsigned char型
for(i=0;i<4;i++)
{
charArray[i] = *pdata++;//把相应地址中的数据保存到unsigned char数组中
}
unsigned char *pf;
pf = (unsigned char*)&floatable;
for(i=0;i<4;i++)
{
*(pf+i)=*(charArray+i);
}
printf("打印结果为:%.20f",floatable);
return 0;
}
打印结果
打印结果为:3.14159250259399414062