我有 c++ 程序,我通过传递字符串来运行它。
g++ -o a main.cpp -lpthread
并执行它./a "Good nice"
但是我如何用 gdb 调试它呢?main.cpp 从其中包含的其他文件调用函数。
gdb ./a "Good nice"
将“--”作为文件并说没有这样的文件!
我要逐行调试!
使用--args
gdb 的选项:
gdb --args ./a "Good nice"
还要将该-g
选项添加到您的编译器调用中,否则 gdb 将无法将您的可执行文件与您的源代码连接:
g++ -g -o a main.cpp -lpthread
gdb ./prog ->设置参数 string
->运行。
花药选择是提供论据后run
$gdb ./a
run "Good nice"