加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 用于查找指针何时超出范围的程序和技术

发布时间:2020-12-16 09:34:10 所属栏目:百科 来源:网络整理
导读:我是一名软件实习生,负责C大型项目的工作.我也是一个单人团队.令人生畏(这就是你拼写它的方式:P),是的,但也很有趣. 我正在运行c指针,最终指向NULL(不是因为内存被释放/删除,但因为,我真的不知道,但我怀疑它,因为我指向的对象被更新,因此最初分配的指针没有
我是一名软件实习生,负责C大型项目的工作.我也是一个单人团队.令人生畏(这就是你拼写它的方式:P),是的,但也很有趣.

我正在运行c指针,最终指向NULL(不是因为内存被释放/删除,但因为,我真的不知道,但我怀疑它,因为我指向的对象被更新,因此最初分配的指针没有’ t指向正确的内存地址.

你可以看到我自己很困惑,这就是为什么我想知道技术或免费程序,帮助我确定WHEN&在哪里指针指向null或超出范围(悬挂指针?是什么发生).

也许我可以使用一个简单的ASSERT调用来确定指针何时为空?

更多信息:现在我的问题是我有一个具有成员变量指针的类.它们在构造函数&中初始化.在构造函数的末尾,那些指针指向正确的对象.但是在对事件的反应中,当我看到这些指针时,它们是空的/超出范围.我可以确定这个因为1.程序崩溃& 2 eclipse调试器将它们显示为红色空心圆(我认为这意味着指向NULL或超出范围?).

解决方法

我会建议两种不同的工具:

> Cppcheck是一个静态分析器,它查看您的源代码并尝试识别问题(使用指针,以及许多其他事情).
> Valgrind是一个运行时工具,可以监视程序执行的所有分配和释放,并确保它们都正确无误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读