使用 GDB 的 info variables 命令查看变量
本文档介绍如何在 GDB 中使用 info variables
命令查看全局变量和静态变量的信息。
步骤
1. 启动 GDB 并加载程序
gdb ./your_program
2. 运行程序或者加载调试信息
(gdb) run
3. 使用 info variables
命令
(gdb) info variables
4. 查看输出结果
输出结果通常会显示如下信息:
All defined variables:
File your_file.c:
int global_variable;
static int static_variable;
...
示例
假设我们有一个简单的 C 程序 example.c
:
#include <stdio.h>
int global_var = 42;
static int static_var = 13;
int main() {
int local_var = 7;
printf("Hello, World!\n");
return 0;
}
在 GDB 中加载和运行这个程序并使用 info variables
命令:
gdb ./example
在 GDB 提示符下:
(gdb) run
(gdb) info variables
输出结果可能如下:
All defined variables:
File example.c:
int global_var;
static int static_var;
请注意,info variables
只会列出全局变量和静态变量,局部变量不会在输出中显示。如果你需要查看当前作用域内的所有变量(包括局部变量),可以使用 info locals
命令:
(gdb) info locals
这将显示当前函数中的所有局部变量及其值。
通过这些步骤,你可以方便地查看 GDB 中 info variables
命令的结果。