GDB调试器使用指南
1. 特殊表达式
GDB理解被调试语言的语法(类型、运算符、运算符优先级)。可以使用与修改GDB便利变量(如$i++)相同的语法来输入表达式。此外,GDB还理解几种特殊语法,用于执行目标语言中没有的操作:
-数组常量:可以通过将元素值列表用花括号括起来,在被调试程序的内存中创建数组常量。例如:{ 1, 2, 3, 42, 57 }。
-数组运算符:@数组运算符可打印数组中直到给定下标的所有元素。例如,若程序使用malloc()分配内存:
double *vals = malloc(count * sizeof(double));可以使用常规下标打印单个元素:
(gdb) print vals[3] $1 = 9也可以使用以下方式访问vals[0]到vals[2]:
(gdb) print *vals@3 $2 = {0, 1, 4}- 文件解析:如果在多个源文件中使用相同的变量名(例如,每个变量都是静态的),可以使用
file::variable指定要使用的变