c - 在 C、Linux 中转储调试步骤

标签 c linux debugging

是否可以将整个程序步骤转储到一个文件中?我不是指变量的值,我指的是从一条指令跳到另一条指令,如果可以同时使用,步骤和 var 值

我用过 gdb 和 GUI(ddd),我一直使用常规步骤,但有时我有一个循环和网络应用程序,所以我不想影响程序的缺陷,我只是想看看一切都完成后到底发生了什么。

例如,

1 #include<stdio.h>
2 
3 int main()
4 {
5
6 int i = 0, y = 0;
7
8 for (y; y< 10; y++) {
9    i++;    
10    printf("%d\n", i)
11 }
12 return 0;
13
14 }

因此转储文件将包含从 int main() 到返回 0 的所有步骤,如下例所示

1. on 1
2. on 2
...
...
8. on 8
9. on 9
10. on 10
11. on 8
12. on 9
... and so on until the loop finishes and then hit return and exit.

最佳答案

使用 GDB 你可以使用 process record and replay .另一个选项是 Jockey用作记录/重放预加载库。

关于c - 在 C、Linux 中转储调试步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16307934/

相关文章:

linux - cron 实用程序的问题

c# - 在 F# 交互中获取调试器上下文

c++ - 未知错误,调试器只给我一个内存地址

c++ - C/C++ 头文件文档

无法使用 C 中的 getchar() 和指针表示法获取用户输入

c++ - 在数组中查找模式的最有效方法?

c - 为什么这个指针没有被取消引用?

c++ - 没有明确使用返回/退出的任何退出状态

c - 高性能阅读 - linux/pthreads

tsql - 如何让 T-SQL PRINT 语句出现在 SQL Server Profiler Traces 中?