请教高手问题:程序运行一定时间就出错,为什么?谢谢!

key306 2004-06-08 11:18:37
我现在有个小程序,进行不同操作,程序都会运行大概10分钟左右就提示,内存"****"“can't read”的错误并退出,程序运行的是debug版本,查了很长时间也没有找到问题所在。请教各位高手,这种问题可能会是哪出了毛病?怎么解决?烦请各位多多想办法!谢谢!
...全文
184 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
key306 2004-06-25
  • 打赏
  • 举报
回复
找到错误说在了:)
谢谢各位的高见!
coohai 2004-06-24
  • 打赏
  • 举报
回复
从头开始,单步调试,找内存越界的地方。
alphapiao 2004-06-24
  • 打赏
  • 举报
回复
程序运行的是debug版本
那还不好办!
你在目标器上装好vc,然后运行debug版本,
到出错时选择调试,就可以直接定位到出问题的语句了.
不过有时候会在系统函数上,
但你也可以通过左下方的堆栈窗口找到最近调用的函数.
huang_yu 2004-06-24
  • 打赏
  • 举报
回复
在windows系统中,内存的写越界是不检测的,即不会弹出错误的对话框,读越界才会弹出错误对话框。
造成楼主程序出错的原因还是指针问题。好好检查一下。
Wenxy1 2004-06-24
  • 打赏
  • 举报
回复
可能是操作内存越界,
检查,对指针的操作。
fbmsf 2004-06-24
  • 打赏
  • 举报
回复
先找出是什么地方出错。你可以用drwtsn32.exe 来检查。

1, 运行 drwtsn32.exe -i 来注册调试器。
2.等到程序出错了就运行drwtsn32来看到底是哪儿有问题。

找到了问题然后分析,为什么运行一段时间有问题。
可取消部分代码来试.
key306 2004-06-24
  • 打赏
  • 举报
回复
我按照各位的方法做了,找到了错误的地方,可以肯定的是,有一个CWnd指针找不到了,这个是我的主View指针,怎么会变成NULL了?
很多不同样步操作后都没事的,为什么运行一定时间就不行了?
我仔细的查过,没有地方我动过这个指针的,有什么可能造成这种情况?
请各位再帮忙想想办法!
真郁闷啊:(
carbon107 2004-06-24
  • 打赏
  • 举报
回复
对,你单步调试,当出现错误时就可以看到错误的地方了,我想应是程序不严密造成的。有的可能是空指针,有的可能是有特别的情况,没有考虑吧
888atao 2004-06-24
  • 打赏
  • 举报
回复
按“ jruv(~~~一叶落而知天下秋~~~) ”的方法做
不要直接双击你的EXE
按F5以调试模式运行
出现错误时就会自动跳到出错的那行代码上
如果出现“中止,重试,忽略”则选重试
gracezhu 2004-06-24
  • 打赏
  • 举报
回复
bounder checker或其他的方法打印出来出错时的调用堆栈
key306 2004-06-24
  • 打赏
  • 举报
回复
至今都没有解决,我算是服了!
为什么同一个函数在执行多次后,有的指针找不到了?大部分是窗口指针,并且这样的函数据我用F5运行测试有不同的几个。
没有办法只能麻烦各位再给提一下查错的建议!谢谢!
Kudeet 2004-06-08
  • 打赏
  • 举报
回复
空指针的问题,
将光标定位到怀疑有问题的代码行上按F9,在该行上设置一个断点,然后按F5进入调试状态,当程序运行到断点处之后,可以按分F10或F11来单步跟踪一下!
nightsuns 2004-06-08
  • 打赏
  • 举报
回复
应该是内存未释放的原因,当动态分配内存的时候,已经没有
内存可用了

返回了NULL指针,而你没检查,所以,就出错了,因为每个进程
最下面的64K是OS禁访区!
jruv 2004-06-08
  • 打赏
  • 举报
回复
F5运行程序, 等待出错后, 调出CallStack窗口,看看在哪个函数,那一行出错的。
key306 2004-06-08
  • 打赏
  • 举报
回复
太好了!谢谢各位的宝贵提示,我赶快去查查!有问题烦请诸位高手再出手相助,谢谢!
syy64 2004-06-08
  • 打赏
  • 举报
回复
数组(静态和动态)的下标变量值已经超出数组的边界.
nkwesley 2004-06-08
  • 打赏
  • 举报
回复
申请的内存及时释放,否则到一定时候就越界了

16,472

社区成员

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

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

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