我有c ++程序,我通过它传递字符串来运行。
g++ -o a main.cpp -lpthread
并使用./a "Good nice"
但我如何使用gdb调试它? main.cpp从包含在其中的其他文件中调用函数。
gdb ./a "Good nice"
将“ - ”作为文件,并且不说这样的文件!
我想逐行调试!
答案 0 :(得分:6)
使用gdb的--args
选项:
gdb --args ./a "Good nice"
还要在编译器调用中添加-g
选项,否则gdb将无法将您的可执行文件与源代码连接起来:
g++ -g -o a main.cpp -lpthread
答案 1 :(得分:5)
答案 2 :(得分:3)
gdb ./prog - > set args string
- > 运行。
答案 3 :(得分:3)
Anther选择是在run
$gdb ./a
run "Good nice"