程序是这样的:
我们gdb,在0x080484EA处下断,即第一次调用printf后。
如图
运行,输入%08x.%08x.%08x
注意此时代码和堆栈情况,
继续
继续
好,接下来认真看了。
执行push eax后,会发现堆栈图成了下图这样:
会发现,格式化字符串,和格式化字符串相对的第一个参数是一样的,神奇吧。
程序是这样的:
我们gdb,在0x080484EA处下断,即第一次调用printf后。
如图
运行,输入%08x.%08x.%08x
注意此时代码和堆栈情况,
继续
继续
好,接下来认真看了。
执行push eax后,会发现堆栈图成了下图这样:
会发现,格式化字符串,和格式化字符串相对的第一个参数是一样的,神奇吧。