print expr
print /f expr
选择不同的格式
x
内存值
ptype expr
数据类型
8.1 表达式
@
二进制操作符,将一块内存作为数组
::
指定一个文件或函数里定义的变量
{type} addr
引用存储于addr位置上的type类型的对象
8.2 程序变量
指定一个特定文件或函数的静态变量,用双冒号(::)标记:
file::variable
function::variable
p 'f2.c'::x
8.3 伪数组
打印几个在内存里连续的相同类型的对象
@ 将一个连续的内存区域作为伪数组
int *array = (int*)malloc(len*sizeof(int))
p *array@len
另一种创建伪数组的方法:强制转化
p/x (short[])0x12345678
$2 = {0x1234,0x5678}
8.3 输出格式
格式符号:
x 以16进制打印整形数据
d 打印带符号整形数据
u 打印无符号整形数据
o 以8进制打印整形数据
t 以2进制打印整形数据
a 打印16进制的绝地地址和偏移
p/a 0x54320
$3 = 0x54320<initial + 396>
stop 2021.02.18