跟踪程序使用gdb

时间:2013-02-19 06:47:17

标签: c linux gdb

int main(int ac, char *av[])
{
  printf("%d");
  return 0;
}

我知道这会打印垃圾,但如何使用gdb跟踪程序来检查垃圾值?

1 个答案:

答案 0 :(得分:3)

您可以在printf上放置断点并使用$esp

检查堆栈

gdb不了解垃圾值;但是在你的情况下printf恰好从堆栈中检索(使用va_args)一些“未定义的”(实际上是“未初始化的”,即包含一些先前的垃圾)值。