float f_real= 0.0f;
block[2]=pImgData[j*width*4+i*4+2];
block[1]=pImgData[j*width*4+i*4+1];
block[0]=pImgData[j*width*4+i*4];
unsigned char block[4];
block[2]=pImgData[j*width*4+i*4+2];
block[1]=pImgData[j*width*4+i*4+1];
block[0]=pImgData[j*width*4+i*4];
memcpy(&f_real, block, sizeof(float));
程序中,pImgData是读取的二进制char类型的图像数据,这里将其转换为float类型的数据
先定义一个类型的flaot数据,为四位;然后定义一个char数组与其对应
先将图像数据拷贝到数组里面,高位和低位对齐,四位为一个数据。然后通过memcpy将数组拷贝到float数据的空间中即可
因为计算机会自动将十进制和二进制,进行换算,因此不必细化考虑如何二进制转十进制和十进制转二进制的问题。