Assembly 堆栈帧和堆栈指针 (gdb)i r esp esp 0xbffff7a0 0xbffff7a0 (gdb)x/32xw$esp 0xbffff7a0:0x00000000 0x08049744 0xbffff7b8 0x080482d9 0xbffff7b0:0xb7f9f729 0xb7fd6ff4 0xbffff7e8

Assembly 堆栈帧和堆栈指针 (gdb)i r esp esp 0xbffff7a0 0xbffff7a0 (gdb)x/32xw$esp 0xbffff7a0:0x00000000 0x08049744 0xbffff7b8 0x080482d9 0xbffff7b0:0xb7f9f729 0xb7fd6ff4 0xbffff7e8,assembly,gdb,Assembly,Gdb,是的,它们是。局部变量是函数的一部分 关于GDB中堆栈上的语句: 最左边的列描述地址,而其他列则在这些地址(+偏移量)处保存值。因此,password\u buffer不是“定位”在0xb7fd6ff4上,而是在索引0上包含0xf4,在索引1上包含0x6f,等等(由于gdb显示的值几乎没有端点,所以相反)。类似地,auth_标志的值为0x00000000

是的,它们是。局部变量是函数的一部分

关于GDB中堆栈上的语句:

最左边的列描述地址,而其他列则在这些地址(+偏移量)处保存值。因此,
password\u buffer
不是“定位”在
0xb7fd6ff4
上,而是在索引
0
上包含
0xf4
,在索引
1
上包含
0x6f
,等等(由于gdb显示的值几乎没有端点,所以相反)。类似地,
auth_标志
的值为
0x00000000