如何查找存储在某个变量旁边的内容

时间:2011-10-27 05:26:55

标签: c++ xcode variables

我目前正在与间歇性的bug作斗争。我创建了一个我班级的浮动成员。我把它初始化为零。然后给它一个值。在接下来的几个进程中,这个变量被多次使用,莫名其妙地,它有时会将其值更改为一个非常小的数字并导致我的程序出错。我已经在我的代码中找到了一般区域,我发誓,我的代码中没有任何东西可以对这个变量起作用。最重要的是,我将运行并使用相同的确切代码多次编译相同的程序,这个错误有时会弹出。

我认为我的其他数组或指针之一偶尔会跳出界限(因为我还没有实现边界检查)并用它自己替换变量值,但我不知道哪一个。我想知道在XCode中是否有办法找出哪些变量存储在这个变量的附近或旁边,所以我可以找出谁可能踩到这个可怜的小儿子的枪?

2 个答案:

答案 0 :(得分:1)

您可以在XCode中启用“guard malloc”。 Guard malloc可以告诉您代码是否在任何已分配区域上写出了界限。我不知道启用它的确切方法(不再),但你肯定会在网上找到一些东西。

答案 1 :(得分:0)

如果您想在使用gdb调试代码时查看某些内存位置,可以使用watch个断点。

也许你的内存堆已损坏了。使用valgrind之类的工具可以提供帮助。