Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何将参数传递给GDB脚本?_C_Debugging_Gdb - Fatal编程技术网

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

C 如何将参数传递给GDB脚本?,c,debugging,gdb,C,Debugging,Gdb,我有一个传递给GDB的GDB脚本: gdb -x my_script.gdb 在我的_script.gdb中有一个变量,比如foo,我使用它作为参数。现在,每当我想为foo尝试不同的值时,我都会在脚本中手动更改foo 我想做的是,在使用上面的命令启动GDB时传递一个命令行参数,以便foo获取该参数的值。这是可能的吗?您可以使用来模拟此行为。您可以在my_script.gdb脚本中定义一些函数,并使用命令行中的参数调用它: $ cat my_script.gdb define func p

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

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


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

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

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

看一看,但是这是用来向程序传递参数的,不是吗?我想给脚本本身传递一个参数也许这就是您正在寻找的文档:似乎您可以将Python文件传递给gdb,在这种情况下,如果gdb脚本不允许,您肯定可以有参数。或者,您可以编写一个Bash脚本,输出行分隔的命令,并通过管道将其传输到gdb。