c - 如何跟踪函数调用?

标签 c function

看我有这样一组函数

funtion_a();
funtion_b();
funtion_c();
|
|
funtion_y();
funtion_z();

现在所有函数都在内部调用 magic()

现在当 function_j() 调用 magic() 时出了点问题,我想在那种情况下进行调试,当我将任何单个打印语句放入 magic 中时,然后在每种情况下

function_a() calles magic()
function_b() calles magic()
|
function_z() calles magic()

printf 已执行,很难看出在我感兴趣的情况下会发生什么

function_j() calles magic()

那么现在有什么办法让我可以跟踪是的魔法是从 function_j() 调用的,所以只有在这种情况下我的调试打印才会出现。?

最佳答案

是的。它被称为调试器。 gdb 或其他任何东西。如果在代码中放置断点,则可以显示调用堆栈并查看调用的函数。您将必须研究您的特定调试器以获取命令。有些集成在 IDE 中,有些是命令行工具,有些是独立的。让 Google 帮助您找到适合您的环境和偏好的产品。

关于c - 如何跟踪函数调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13578962/

相关文章:

php - MYSQL查询特定行

c++ - 2个数组相乘的函数

c - C 中的函数和返回值

vb.net - 委托(delegate)函数没有返回值

c++ - 避免 C++ 多态性

c# - 测量代码使用的内存

matlab - 使用具有多个输入的函数时出错

c - C中的Malloc和数组索引混淆

c - 将 fgetc() 的结果可移植地分配给 C 中的 char 的最佳方法

c++ - gets() 导致内存损坏?