先生成可调试的可执行文件,-g选项生成的文件才可以进行gdb调试

1
g++ -g file_1.cpp file_2.cpp -o main 

对该生成文件进行gdb调试

1
gdb main

设置断点(b+断点所在行数)

1
b LINENUM

设置指定文件内的断点(b+文件名:断点所在行数)

1
b filename:LINENUM

单步进入:step

单步执行:next

开始运行:run

查看变量:

  • 查看局部变量print variable_name
  • 查看成员变量print object_name.member_variable
  • 打印数组内容print array_name
  • 打印指针内容print *pointer_name
  • 打印数组的前多少个元素print array_name@length
  • 观察变量随时变化display variable_name
  • 停止观察变量undisplay variable_name
  • 查看所有局部变量info locals
  • 查看所有全局变量info variables,如果全局变量在特定的命名空间内info variables namespace_name::
  • 查看变量类型whatis variable_name
  • 动态更改变量值set variable variable_name = new_value
  • 继续运行程序continue