我知道可以使用 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?
谢谢。