代码之家  ›  专栏  ›  技术社区  ›  Rohit

使用GDB检查机器堆栈

gdb
  •  13
  • Rohit  · 技术社区  · 14 年前

    (gdb) # get last value pushed on stack
    (gdb) p *(int *)($esp)
    (gdb) # get 2nd to last value pushed on stack
    (gdb) p *(int *)($esp + 4) 
    

    有没有更好的方法来查看机器堆栈?可能印得不错吧?

    1 回复  |  直到 14 年前
        1
  •  21
  •   Community Lee    13 年前

    检查堆栈顶部的16个单词:

    x/16wx $esp
    

    “w”是用来打印单词的