//**************************************************************
//malloc错误使用的调试
//环境:VC6.0 XP SP3
//作者:bingghost
//邮箱:bingghost@gmail.com
//版权所有,转载是请注明出处
//**************************************************************
学c的童鞋们经常都会用到malloc, 申请 释放的代码写的不规范,就很容易产生内存的非法访问,那么当我们代码写了很多行之后又该如何去调试并发现错误呢?
下面以VC环境为例.....
(1)首先构造代码如下,假定每行中间代码很多

假定代码多到你无法在短时间用肉眼看出来.......
(2)编译连接如上代码,运行出错…

(3)点”重试”,在点”取消”进入调试模式
或者下断点后 调试运行

(4).查看栈窗口,回溯到上个窗口,发现代码报错地点

(5).看到free估计psz是一个堆指针,观察其堆结构
//malloc错误使用的调试
//环境:VC6.0 XP SP3
//作者:bingghost
//邮箱:bingghost@gmail.com
//版权所有,转载是请注明出处
//**************************************************************
学c的童鞋们经常都会用到malloc, 申请 释放的代码写的不规范,就很容易产生内存的非法访问,那么当我们代码写了很多行之后又该如何去调试并发现错误呢?
下面以VC环境为例.....
(1)首先构造代码如下,假定每行中间代码很多

假定代码多到你无法在短时间用肉眼看出来.......
(2)编译连接如上代码,运行出错…

(3)点”重试”,在点”取消”进入调试模式
或者下断点后 调试运行

(4).查看栈窗口,回溯到上个窗口,发现代码报错地点

(5).看到free估计psz是一个堆指针,观察其堆结构