函数参数上的 GDB 断点

标签 gdb

我们能否在函数上设置 GDB 断点,使其仅在函数参数与指定值匹配时才中断? 例如

int foo(int i) {
return i*i;
}

int main() {
  foo(0);
  ................
  foo(9);
}

如何在 foo 的参数 i 为 5 时才在 foo 上设置断点?

最佳答案

当然,使用“break if”

break foo if i == 5

如果你有多个变量需要中断,只需使用经典的 if 语法:

break foo if i == 5 && j == 3

关于函数参数上的 GDB 断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26356961/

相关文章:

gdb - SPARC 和 HP-UX 中的叶函数

gdb - 如何在 GDB 中只打印变量的值?

c++ - 保存并重新启动暂停的 gdb session

c++ - 使用 gdb 调试 C++:如何检查 std::vector 的值——传入函数

linux - 如何配置 gdb 加载符号?

visual-studio - 如何在 Visual Studio C++ (Express) 中使用 GDB 来调试我的 GCC Makefile 项目?

c++ - 如何查看 GDB 中自动变量的内存地址?

c - 为什么 gdb 会抛出内部错误并告诉我存在错误?

gdbserver 跟踪点臂支持

c - 如何在 GDB 中将二进制值(1010)打印成十进制值(10)?