S.l.e!ep.¢%

像打了激速一样,以四倍的速度运转,开心的工作
简单、开放、平等的公司文化;尊重个性、自由与个人价值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
写内存越界导致之后的 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); // <==== 内存分配失败
    free(lpszBuf);                            // <==== 出错 执行到 int 3; 指令
    free(lpszTest);

    
return 0;
}

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理