access violation at address的问题,给跪了,大婶们,行行好,救救俺吧!

aiyuanmuqiuyu 2014-01-08 11:19:19
我老师的项目是让我编一个基于RTX的C++程序。本来程序在vc6.0运行得好好的,但是改编至RTX中就出现了非法访问内存的情况,而且,有时候程序能运行,有时候出现错误警告,有时候电脑直接重启。我自习检查了我的程序,代码基本上是直接复制过去的,C代码没有任何错误啊。而且,我把C分离出来,仅剩下RTX的框架,运行也是正常的。有没有大神给我指引一个调试或者找错的方向?RTX不支持单步调试啊,貌似。蛋疼,小弟跪求各位帮帮忙啊!
...全文
745 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
大奶兔白糖 2014-01-08
  • 打赏
  • 举报
回复
改编至?明显改编过程中出了问题或者没改编完。查查内存越界和野指针吧。
aiyuanmuqiuyu 2014-01-08
  • 打赏
  • 举报
回复
不能沉啊。。。
zhuobattle 2014-01-08
  • 打赏
  • 举报
回复
windbg,不能源码调试时的分析利器、
  • 打赏
  • 举报
回复
应该是野指针了。 在系统关键位置打log,崩溃之后根据log去找相关信息
aiyuanmuqiuyu 2014-01-08
  • 打赏
  • 举报
回复
多谢各位大神的回答!首先,数组越界的问题,如果存在的话,在C++程序中也会是由错误提示吧?然后我程序中申请内存用的事new,二维指针在构造函数时利用如下代码段 m_pData = new double* [m_nRow]; for (int i=0;i<m_nRow;i++) m_pData[i] = new double [m_nCol]; 相应的,在析构时采用: for (int i=0;i<m_nRow;i++) { delete [] m_pData[i]; } delete [] m_pData; m_pData = NULL; 这样搭配起来不会有问题吧?
starytx 2014-01-08
  • 打赏
  • 举报
回复
空指针?野指针?数组越界?重点看下指针问题(比如某些函数的指针返回值没有检查直接使用等等)
dj827454 2014-01-08
  • 打赏
  • 举报
回复
楼主可以通过下面的方法先确定一下问题的性质, 监测一下程序运行时的内存变化情况,看看是否增长很快。 如果增长很快则可能存在内存泄露问题。 否则的话可能是操作某个指针的时候把不属于它的内存给覆盖了。 祝好运!
赵4老师 2014-01-08
  • 打赏
  • 举报
回复
drwtsn32 -i drwtsn32
aiyuanmuqiuyu 2014-01-08
  • 打赏
  • 举报
回复
如果我让它运行一次在那等待,程序有时候可以运行完一次,然后等一会,也有可能直接死机。。。。感觉越来越不能理解电脑了
漫步者、 2014-01-08
  • 打赏
  • 举报
回复
野指针或者数组越界
赵4老师 2014-01-08
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
mujiok2003 2014-01-08
  • 打赏
  • 举报
回复
单步调戏一下咯。
羽飞 2014-01-08
  • 打赏
  • 举报
回复
用VC检查下代码的内存泄露和指针越界,多测试几种情况

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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