我们怎么知道来电函数的名字?
发布时间:2020-12-16 03:10:46 所属栏目:百科 来源:网络整理
导读:在C语言中,__FUNCTION__可用于获取当前函数的名称. 但是如果我定义了一个名为a()的函数,它在b()中被调用,如下所示: b(){ a();} 现在,在源代码中,有很多像b()一样调用a()的函数,例如c(),d(),e()… 在()内部可以添加一些代码来检测调用a()的函数的名称吗? 进
在C语言中,__FUNCTION__可用于获取当前函数的名称.
但是如果我定义了一个名为a()的函数,它在b()中被调用,如下所示: b() { a(); } 现在,在源代码中,有很多像b()一样调用a()的函数,例如c(),d(),e()… 在()内部可以添加一些代码来检测调用a()的函数的名称吗? 进一步: 对不起,误导性的打字错误.我已经纠正了 解决方法
没有什么你只能在一个.
但是,通过简单的宏观技巧,您可以实现所需的功能,IIUC显示调用者的名称. void a() { /* Your code */ } void a_special( char const * caller_name ) { printf( "a was called from %s",caller_name ); a(); } #define a() a_special( __FUNC__) void b() { a(); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |