是否可以获得指向当前函数的指针?如果是,我该怎么办?
动机:我有一个函数做一些日志记录,并且想调用
log(currentfunc, "blabla")
例如,有些输出。
答案 0 :(得分:5)
您可以通过预定义标识符__func__
获取当前函数的名称(但不是指向它的指针)。log(__func__, "blabla");
是C99的一部分。
{{1}}
答案 1 :(得分:2)
我不确定指向函数的指针,但预定义的标识符__func__
返回函数的名称。也许这可以帮助......
事实上,我会用宏替换你的函数log
,所以你不必每次都粘贴名称,如下所示:
#define log(x) log(__func__,x)
答案 2 :(得分:0)