C++ 当满足条件时,如何在eclipse中停止执行
我在c projet中有一个全局计数器变量 它超出了预期的范围 但我找不到增长线 有没有办法在变量位于C++ 当满足条件时,如何在eclipse中停止执行,c++,c,eclipse,debugging,memory,C++,C,Eclipse,Debugging,Memory,我在c projet中有一个全局计数器变量 它超出了预期的范围 但我找不到增长线 有没有办法在变量位于X上方的行上保持执行 我可以获取变量内存地址。如果它是全局的,而您不知道它是如何增加的,请按ctrl+h,搜索变量名称,并查看它在哪里被f-ed。可能是别的什么地方修改了它,而你对此一无所知。总体而言,使用globals是一个非常糟糕的主意。监控它的最好方法是使用一些程序,这是唯一可以访问计数器的程序,然后在该功能中将其与X进行比较。几分钟的谷歌搜索证实了我在评论中的建议: GDB是GCC的调试
X
上方的行上保持执行
我可以获取变量内存地址。如果它是全局的,而您不知道它是如何增加的,请按ctrl+h,搜索变量名称,并查看它在哪里被f-ed。可能是别的什么地方修改了它,而你对此一无所知。总体而言,使用globals是一个非常糟糕的主意。监控它的最好方法是使用一些程序,这是唯一可以访问计数器的程序,然后在该功能中将其与X进行比较。几分钟的谷歌搜索证实了我在评论中的建议: GDB是GCC的调试器,支持所谓的观察点 您可以在GDB的命令行中找到一个描述,即如何设置它们。您还可以在Eclipse中切换这些观察点(应该取决于您使用的Eclipse版本)。告诉你怎么做
如果您还没有安装GDB(我想知道您的调试器会是什么),通常只有几行代码增加了该变量。如果没有,考虑封装它并提供一些访问函数。广泛使用的globals很难处理。一些编译器提供了放置内存断点的可能性,这些断点在特定地址的数据被更改时被触发。
一些编译器提供了放置内存断点的可能性,这些断点在特定地址的数据被更改时被触发。
eclipse中的gcc会这样做吗?我同意,但这是一个庞大的代码,我没有时间重构ATM。我已经尝试了ctrl+h组合键和许多实例。eclipse中没有内置的暂停条件的方法吗?困难的是,可以分配给另一个指针,并在过程中以另一个名称递增。