您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> 图像处理GetBupHeader的一个问题
本帖共有442个阅读者
发表帖子 发表投票 回复主题
图像处理GetBupHeader的一个问题
OG(论坛新手)
OG
头衔:社区公民
帮派:无帮无派
帖数:21
金钱:350
积分:40
注册时间:2014/3/16
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
图像处理GetBupHeader的一个问题

int GetBmpHeader(BMPIMAGE* img) {
unsigned char headbuffer[INFOHEADSIZE];
BMPFILEHEAD *filehead = &img->filehead;
BMPINFOHEAD *infohead = &img->infohead;
if (fread(headbuffer, 1, FILEHEADSIZE, img->bmpfile) != FILEHEADSIZE) {
  return FALSE;
}
img->filehead.bfType[0] = headbuffer[0];
img->filehead.bfType[1] = headbuffer[1];
if (*(unsigned short *)&filehead->bfType[0] != (0x4D42)) { /* 'BM'   */
  printf("file is not bmp\n\r");
  return FALSE;           /* not bmp image*/
}

(*(unsigned short *)&filehead->bfType[0] != (0x4D42))这句话难以理解,希望解释的清楚点,还有0x4D42是什么用的



我是og,学到的都会用来帮助大家
等级:论坛新手 参考IP地址:*.*.*.*
2014/4/16 22:45:24
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
0x4d 0x42 是BMP图像的头信息,换算成ASCII 码就是字母BM ,用于判断是否为BMP图像。
你查一下BMP图像格式就明白了。

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2014/4/17 1:38:43
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159176 Call, 1 Queries, Processed in 0.031250 second(s),