对照上图与下方结构体一一对应
// BMP文件头结构体
typedef struct {
uint16_t bfType;//0-1:表示文件类型,BMP格式的文件这两个字节是0x4D42,10进制就是19778,字符显示就是‘BM’;
uint32_t bfSize;//2-5:表示文件的大小,此处是0x00111F2A,十进制1122090,正确
uint16_t bfReserved1;//6-7:保留位,必须设置为0
uint16_t bfReserved2;//8-9:保留位,必须设置为0
uint32_t bfOffBits;//a-d:表示偏移,即0x8a,十进制138
} BMPFileHeader;
// BMP信息头结构体
typedef struct {
uint32_t biSize;//0e-11:信息头总大小0x0000007c,十进制124(标准的BMP信息头应该为40个字节,客户的图片不标准,不过可以fseek掉)
int32_t biWidth;//12-1