c - 如何获取调用当前函数的函数名?

标签 c function

在函数内部,可以放置(对于 gcc)

printf("%s: I am here!", __FUNCTION__);

指示特定消息的来源。现在,假设我有几个函数 A1、A2、A3……,它们都可能调用函数 B()。我想知道是否有一种简洁的方法来指示哪个函数在运行时调用 B()。

最佳答案

您可以简单地使用 backtrace()(这也不是完全可移植的)

请参阅此链接: http://www.kernel.org/doc/man-pages/online/pages/man3/backtrace.3.html

关于c - 如何获取调用当前函数的函数名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13618324/

相关文章:

c++ - 如何创建一个圆柱形骨骼,存储为由 2 个点(头、尾)组成的 vector ?

c - 如何使用sqlite的外键链接三个表1->2->3不同的列

c - 使用 makefile 编译时出现链接器错误

javascript - "If"与 JavaScript 中的 "and"

c++ - 将二维数组引入函数c++

python - 在 Python 中对无限循环使用无限递归是一种罪过吗?

c - 在什么情况下我可能会失去对 malloc 分配的指针的访问权限?

javascript在函数构造函数中访问 "this"

ios - 调用另一个类中的函数,该函数通过 IBaction 读取动态变量

python - 如何使用 python 避免嵌套函数中的深度递归