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

运行编译出错。Run-Time Check Failure #2

2012-04-07 
运行编译出错。。请教高手Run-Time Check Failure #2代码是这样的:BYTEbtKey[8]memset(btKey,0,8)memcpy(b

运行编译出错。。请教高手Run-Time Check Failure #2
代码是这样的:
BYTE   btKey[8];
memset(btKey,   0,   8);
memcpy(btKey,   pAddr   +   40,   8);

UINT   uKey;
memcpy(&uKey,btKey,8);

return   uKey;

return之后会报以下错误,请教下这个问题怎么解决
Run-Time   Check   Failure   #2   -   Stack   around   the   variable   'uKey '   was   corrupted.

[解决办法]
32位系统下UINT 类型是4字节的
[解决办法]
也就是说,在32-bit环境下, 你把 memcpy(&uKey,btKey,8); 改为 memcpy(&uKey,btKey,4); 就应该正确了

热点排行