1
Q
追踪程序GDB
A
回答
3
你可以穿上printf
一个断点,并检查使用$esp
gdb
不知道垃圾值栈;但在你的情况下printf
碰巧从堆栈中检索(使用va_args
)一些“未定义”(实际上是“未初始化”,即包含一些先前的垃圾)值。
+0
我想进入printf。我正在阅读C,并且在一次面试问题中我发现了这个问题,我立即明白这会打印垃圾,但我想用gdb进行调试,以了解C程序的后台进程。 – SamKan 2013-02-19 09:31:19
相关问题
- 1. 追踪Wordpress程序
- 2. 奇怪的GDB错误无法追踪
- 3. 在C++代码中追踪指针gdb
- 4. gdb -gdbserver跟踪远程程序执行
- 5. 在android中的路径追踪程序
- 6. 呼叫追踪Windows驱动程序
- 7. 多线程射线追踪
- 8. 子进程子追踪
- 9. 如何使用gdb追踪C++中的double free或corruption错误
- 10. 通过PHP获取GDB对核心文件的追踪
- 11. GDB自动跟踪
- 12. 如何使用GDB输出C +程序集跟踪?
- 13. 使用gdb跟踪外国的android程序或应用程序 - 加载符号?
- 14. 追踪JSF应用程序中的序列化问题
- 15. gdb:退出程序而不退出gdb
- 16. 跟踪追踪错误
- 17. 递归追踪
- 18. 保留追踪
- 19. 追踪关闭
- 20. 追踪OutOfMemoryError
- 21. 追踪叶片
- 22. GDB跟踪:无当前跟踪帧
- 23. acts_as_follower订单追踪者降序
- 24. 升压序列化 - 使对象追踪
- 25. 在Jenkins/Git中设置远程追踪
- 26. 流程执行追踪工具
- 27. 追踪子进程的死亡
- 28. 简单的光线追踪教程?
- 29. 重置远程追踪分支
- 30. 追踪iOS应用程式用户
代码中没有垃圾值。如果你调用'printf(“%d \ n”,x);'带有未初始化的'int x;''。如果您在编译时将'-Wall'传递给'gcc',则会发出警告。所以我不明白这个问题(你可以用'gdb'在'printf'中放置一个断点) – 2013-02-19 06:50:36
你想知道在调用'printf'之前“垃圾值”是多少?或者你希望能够进入'printf'功能? – 2013-02-19 06:51:43
我同意其他人的观点,您的问题并不完全清楚。你到底想通过使用'gdb'来获得你无法运行的程序? – NPE 2013-02-19 06:53:11