typedef struct tagBITMAPFILEHEADER {
WORD bfType;//指定文件类型,必须是0x424D,即字符串“BM”
DWORD bfSize;//指定文件大小,包括这14个字节。
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;//为从文件头到实际的位图数据的偏移字节数
WORD bfType;//指定文件类型,必须是0x424D,即字符串“BM”
DWORD bfSize;//指定文件大小,包括这14个字节。
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;//为从文件头到实际的位图数据的偏移字节数
} BITMAPFILEHEADER;
BITMAPFILEHEADER bf;
BITMAPINFOHEADER bi;
WORD bftype;
//fread(&bftype,

在读取BMP文件头时遇到错误,bf.bfSize等字段读取不正确。问题源于结构体按照DWORD对齐,导致实际读取位置偏移。通过在结构体定义前加入#pragma pack(1)来设置一字节对齐,解决了读取错误。
最低0.47元/天 解锁文章
281

被折叠的 条评论
为什么被折叠?



