Memory gdb使用一个命令的计算作为另一个命令的参数
我试图显示当前堆栈帧的内存打印输出,但现在我要做的是费力的:Memory gdb使用一个命令的计算作为另一个命令的参数,memory,gdb,stack,Memory,Gdb,Stack,我试图显示当前堆栈帧的内存打印输出,但现在我要做的是费力的: # Find out how big the current frame is: (gdb) print/x $ebp - $esp $1 = 0x4 # Use that in a display: (gdb) x/4x $ebp 我希望使用define命令,使其在每一步之后都能发生,这样我就可以不断地了解堆栈帧 做这样的事情: (gdb) x/$1x $ebp (gdb) x/($1)x $ebp 没有工作。在中,使用命令x检
# Find out how big the current frame is:
(gdb) print/x $ebp - $esp
$1 = 0x4
# Use that in a display:
(gdb) x/4x $ebp
我希望使用define
命令,使其在每一步之后都能发生,这样我就可以不断地了解堆栈帧
做这样的事情:
(gdb) x/$1x $ebp
(gdb) x/($1)x $ebp
没有工作。在中,使用命令x
检查内存,参数如下:
x
x address
x/nfu address
其中,n
是重复计数,f
是显示格式,u
是单位大小;
请注意最后一个命令
x/$\uucode>,在该命令中,在x
之后,最后检查的地址可用于使用$\ucode>变量的表达式中
编辑:由变量$\uu
生成的地址的内存内容由变量$\u
给出 $\u
!谁会想到呢。
(gdb) p/x $rsp
$4 = 0x7fffffffe248
(gdb) x/4x 0x7fffffffe248
0x7fffffffe248: 0xffffe4e5 0x00007fff 0x00000000 0x00000000
(gdb) x/$4
0x7fffffffe248: 0xffffe4e5
(gdb) x/$4x
Value can't be converted to integer.
(gdb) x/$4 $rsp
A syntax error in expression, near `$rsp'.
(gdb) x/$_
0x7fffffffe248: 0xffffe4e5