???程序崩了,郁闷三天有余!解决者另有100相送!!

tianzxy 2005-07-15 06:08:46
我的程序原本很正常,谁知道加了一部分对话框画图后就崩了。
程序调试在 int 3处 停止,忽略后再运行就会停在在 77******1b 地址处,我整了3天了,查过所有动态分配内存的地方,都没有发现问题,怎么办呀!!高手帮我!!

错误信息:
Debug Assertion Failed!
Program:......\Myexe.exe
File:dbgheap.c
Line:1011
Expression:_CrtIsValidHeapPointer(pUserData)
...........................
...全文
173 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianzxy 2005-11-18
  • 打赏
  • 举报
回复
没搞定,但是还是谢谢大家!
xing_xing_xing 2005-07-16
  • 打赏
  • 举报
回复
看你加了什么代码了,仔细检查
skyMountain 2005-07-16
  • 打赏
  • 举报
回复
_CrtIsValidHeapPointer(pUserData)的意思是说,你某个堆变量的地址根本就不合法。也就是说,C++帮你检查出了你正在使用的一个对象发生了严重的错误,pUserData根本就不可能指向什么对象。
skyMountain 2005-07-16
  • 打赏
  • 举报
回复
一定是产生了内存越界错误。你可以细看你的程序堆栈,可以发现很多对象的数据全都乱了套——你的程序可能已经把程序的运行堆栈都打乱了。此问题非常棘手,你细心检查程序堆栈崩溃前的代码,看有哪些地方不小心改写了内存的。可能是野指针问题,也可能是strcpy、memset等的等等直接操纵内存块的函数出问题。
复习一下编码规范吧,祝好运。
hifan 2005-07-16
  • 打赏
  • 举报
回复
ASSERT(p==NULL);
估计是某个指针为空~
loveghb 2005-07-16
  • 打赏
  • 举报
回复
自己写个调试的宏,目的是写文本,把此宏放到每个可能出错的函数开头,然后运行你的程序,崩溃掉以后你知道是那里出错了。
然后你就断点慢慢跟吧
wenkui 2005-07-15
  • 打赏
  • 举报
回复
用windbg调可以看到死在哪一行
这样你就明白了
qrlvls 2005-07-15
  • 打赏
  • 举报
回复
^o^
qrlvls 2005-07-15
  • 打赏
  • 举报
回复
或者直接传代码出来看
qrao@163.com
ssbelle 2005-07-15
  • 打赏
  • 举报
回复
贴程序出来

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧