标题:问个弱弱的问题!
取消只看楼主
Rey1023
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2007-3-10
结帖率:0
 问题点数:0 回复次数:3 
问个弱弱的问题!

我在看代码的时候看到了一段不懂的代码,是关于DIB的类定义的
int CDib::SaveBmp(LPCSTR filename)
{
BITMAPFILEHEADER hdr;
CFile file(filename,CFile::modeWrite|CFile::modeCreate);
//头文件
hdr.bfType=((WORD)'M'<<8)+'B';
LPBITMAPINFO pbi=GetBitmapInfo();
PBITMAPINFOHEADER pbih=(PBITMAPINFOHEADER)pbi;

hdr.bfSize=(DWORD)(sizeof(BITMAPFILEHEADER)+pbih->biSize+pbih->biClrUsed*sizeof(RGBQUAD)+pbih->biSizeImage);
hdr.bfReserved1=0;
hdr.bfReserved2=0;

hdr.bfOffBits=(DWORD)sizeof(BITMAPFILEHEADER)+pbih->biSize+pbih->biClrUsed*sizeof(RGBQUAD);
//写入头文件
file.Write((LPVOID)&hdr,sizeof(BITMAPFILEHEADER));
//写入信息头
file.Write((LPVOID)pbih,sizeof(BITMAPINFOHEADER)+pbih->biClrUsed*sizeof(RGBQUAD));
//写入数据
int nTotal=pbih->biSizeImage;
LPVOID lpBits=GetBits();
file.WriteHuge(lpBits,nTotal);

file.Close();

delete pbi;
return 1;
}
红色的地方看不怎么懂,<<的用法,我查了一下MSDN,好像也不是这样用的,高手帮忙解释一下,谢谢了!

搜索更多相关主题的帖子: pbi CFile hdr sizeof filename 
2007-08-02 11:40
Rey1023
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2007-3-10
得分:0 
我也觉得应该是,但没报错!

人生就是一场赌博,生命中最重要的是尝试.生活中最糟糕的事情不是你冒险失败,而是你根本没有去尝试!
2007-08-02 12:32
Rey1023
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2007-3-10
得分:0 

怎么就没人看看哦!


人生就是一场赌博,生命中最重要的是尝试.生活中最糟糕的事情不是你冒险失败,而是你根本没有去尝试!
2007-08-03 15:52
Rey1023
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2007-3-10
得分:0 
  很久没上了,谢谢!

人生就是一场赌博,生命中最重要的是尝试.生活中最糟糕的事情不是你冒险失败,而是你根本没有去尝试!
2007-08-17 10:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-159867-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.097486 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved