unsigned char tmp[4] = {0};
tmp[0] = buf[0];
tmp[1] = buf[1];
tmp[2] = buf[2];
tmp[3] = buf[3];
float *pf = (float*)tmp;
float val = *(pf);
buf数组内存的是四字节浮点型数据,浮点型数据一般有四种字节序,根据buf字节序调整传入tmp的顺序,如果顺序正确就可以正确打印当前数据的浮点数值。