c - 如何将参数传递给 GDB 脚本?

标签 c debugging gdb

我有一个传递给 GDB 的 GDB 脚本:

gdb -x my_script.gdb

my_script.gdb 中,我有一个变量,例如 foo,我将其用作参数。现在,每当我想为 foo 尝试不同的值时,我都会在脚本中手动更改 foo

我想做的是在使用上述命令启动 GDB 时传递一个命令行参数,以便 foo 获取该参数的值。这可能吗?

最佳答案

您可以使用 User-defined Commands 模拟此行为.您可以在 my_script.gdb 脚本中定义一些函数,并使用命令行中的参数调用它:

$ cat my_script.gdb
define func
   print $arg0
end
$ gdb -q -x my_script.gdb -ex "func 123"
$1 = 123
(gdb) 

关于c - 如何将参数传递给 GDB 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61059226/

相关文章:

c++ - 调用 Gtkmm textBuffer->insert 时出现段错误

python - 如何在 virtualenv 中使用 gdb python 调试扩展

c++ - 如何在终端上以星号(*)的形式显示输入密码

c++ - 这是怎么定义的?

CC65 : Four lines bad, 两行好吗?

android - 尝试在我的 Android 应用程序中调试某些 C 代码时获取 "Unknown Application ABI"

c - 在变量被释放时中断

c - 调试器是解释代码还是只是运行它?

c++ - 在 main 之前调试对全局变量的赋值

c - Linux:从一个线程调用 wait() 是否会导致所有其他线程也进入休眠状态?