Sha*_*ars 111 c linux debugging gdb command-line-arguments
作为我的任务的一部分,我必须调试一个有错误的程序.但是,我必须首先传递命令行参数才能解决这个问题.
我做:
gdb -tui InsertionSortWithErrors
Run Code Online (Sandbox Code Playgroud)
哪个有效,但之后我不知道如何传递参数.我用过gdb -help,它说了一些关于--args我也尝试过的东西,它没有用.
我希望能够获得调试器+ gui并传递命令行参数.
lda*_*v1s 189
一旦gdb启动,您可以使用"r args " 运行程序.
因此,如果您通过以下方式运行代码:
$ executablefile arg1 arg2 arg3
Run Code Online (Sandbox Code Playgroud)
gdb通过以下方式调试:
$ gdb executablefile
(gdb) r arg1 arg2 arg3
Run Code Online (Sandbox Code Playgroud)
Bas*_*tch 90
尝试
gdb --args InsertionSortWithErrors arg1toinsort arg2toinsort
Run Code Online (Sandbox Code Playgroud)
Fer*_*hez 21
另一个选项,一旦进入gdb shell,在运行程序之前,你就可以做到
(gdb) set args file1 file2
Run Code Online (Sandbox Code Playgroud)
并检查它
(gdb) show args
Run Code Online (Sandbox Code Playgroud)
Ale*_*lex 20
我正在使用gdb 7.1.1,如下--help所示:
gdb [options] --args executable-file [inferior-arguments ...]
恕我直言,这个订单起初有点不直观.