使用GDB,watch i
可以在i
更改时中断。问题是我有多个使用名称i
的函数,因此GDB会破坏所有这些函数。
是否有可能在i
更改时中断,但仅在给定函数内部?
答案 0 :(得分:4)
我猜你 正在观看全局变量 ,因此它会在修改此变量的所有函数中停止 这是逻辑和预期的行为 即可。如果只想在i
更改时在给定函数内部中断,请不要为i
设置断点。而是为所需的函数设置断点。当此断点被点击时,现在设置i
的监视,以便您确切知道在所需功能中修改i
时将触发下一个断点(忽略可能的递归等)
我猜你可能没有在每个具有相同名称的函数中查看局部变量,因为 在你处于特定函数的范围之前,你不能在局部变量上设置断点。 强>