Posted on 2010-01-15 16:29
S.l.e!ep.¢% 閱讀(1200)
評(píng)論(0) 編輯 收藏 引用 所屬分類(lèi):
C++
寫(xiě)內(nèi)存越界導(dǎo)致之后的 malloc 失敗,原因未究
#include?<stdlib.h>
#include?<stdio.h>
#include?<memory.h>
int?main()
{
#define?BUF_SIZE?25
????_asm?int?3;
????char*?lpszBuf?=?(char*)malloc(BUF_SIZE);
????memset(lpszBuf,?0x00,?BUF_SIZE*2);
????char*?lpszTest?=?(char*)malloc(BUF_SIZE);?//?<====?內(nèi)存分配失敗
????free(lpszBuf);????????????????????????????//?<====?出錯(cuò)?執(zhí)行到?int?3;?指令
????free(lpszTest);
????return?0;
}