1.查看core文件:/opt/compiler/gcc-4.8.2/bin/gdb bin/mixer /home/coresave/bak/core文件
2.查看堆栈信息:bt
3.红框表示堆栈的帧frame,定位到是哪个帧出问题就直接跳到该帧:f num(前面的数字)
4.查看所有线程:info(i) threads
5.找到对应的线程id后,利用thread <num>切换到该线程
6.打印出当前函数的参数名及其值:info args
7.打印出当前函数中所有局部变量及其值:info locals
8.查看当前函数的异常处理信息:info catch
9.查看源代码在内存中的地址:info line后面可以跟“行号”,“函数名”,“文件名:行号”,“文件名:函数名”,这个命令会打印出所指定的源码在运行时的内存地址:info line tst.c:func
10.查看函数func的汇编代码:disassemble func
11.看当前程序的运行数据:p(or print) 变量名(p/x是让其以十六进制的格式输出)
12.gdb支持以下操作符
“@”的左边是第一个内存的地址的值,“@”的右边则你你想查看内存的长度。
例如:p *array@len
13.栈向上or向下n层:up n、down n
原文:https://www.cnblogs.com/rainisraining/p/14715533.html