首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

VC里面看不懂的三句话!解决方法

2012-02-26 
VC里面看不懂的三句话! HLOCALhTempImgData//HLOCAL??LPBITMAPINFOHEADERlpImgData,lpTempImgData问题1:

VC里面看不懂的三句话!

HLOCAL       hTempImgData   ;     //HLOCAL     ??  
LPBITMAPINFOHEADER         lpImgData   ,   lpTempImgData;

问题1:LocalAlloc(LHND,480000)???
hTempImgData=LocalAlloc(LHND,480000);

问题2:GlobalLock??            
lpImgData=   (LPBITMAPINFOHEADER)GlobalLock(hImgData);

问题3:LocalLock??
lpTempImgData=(LPBITMAPINFOHEADER)LocalLock(hTempImgData);

以上三句话真的看不明白!请各位指点!

[解决办法]
LocalAlloc与GlobalAlloc都是用来heap内存分配空间的,
区别主要是前者是局域分配,适宜于小空间分配,这与near pointer相似。
(在dos中可访问或分配高区,即: <640K)
后者指全内存空间分配,适宜于大空间,与far pointer相似。(> 640K).
[解决办法]
LocalAlloc(LHND,480000)
为LHND句柄分配480000字节内存
GlobalLock
参数为句柄,返回关联这个句柄的内存指针.同时锁住该句柄,不让其它程序使用,
使用后必须用GlobalUnLock释放句柄,之前返回的指针也将失去作用.
LocalLock
和上面一个应该只是全局和局部之分,
记的也不是很清楚,楼主可以看看MSDN上面有详解

热点排行