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

时间:2019-01-27 23:06:23

标签: c function debugging tracing

我知道可以使用 func 静态获取当前函数名称。

Get called function name as string

但是,如果我想获得调用此函数的函数,则必须动态完成。

在C语言中有没有一种方法(不对通过调用方函数名称的当前函数添加任何修饰)?

我不想大大降低程序的执行速度。那么gdb是不是一个选择?

dladdr对于共享库可能有用。我也想要静态编译的可执行文件。

http://man7.org/linux/man-pages/man3/dladdr.3.html

编辑:

类似的事情没有帮助。如果要获取每个被叫方的调用者函数名称,则需要对每个函数进行编辑,这不是可扩展的解决方案。

How can we know the caller function's name?

谢谢。

0 个答案:

没有答案