c语言编程获取函数名 C语言中函数名

C语言 Linux 获取调用者函数名称

可以做到的,参考一下backtrace_symbols的实现以及相关原理,这里面比较复杂,也比较底层,一两句话说不清楚

创新互联建站坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10余年网站建设经验创新互联建站是成都老牌网站营销服务商,为您提供成都网站制作、网站建设、网站设计、HTML5建站、网站制作、成都品牌网站建设、小程序定制开发服务,给众多知名企业提供过好品质的建站服务。

你要是想通过_FUNCTION_这种方式来搞的话,可以通过如下方式:

#define m_fun(args) fun(__FILE__,__LINE__, args)

进行相应的替换即可

c语言函数内部获取调用该函数的函数名?

获取不到,函数名在连接时被替换成函数入口地址,实际运行的程序中通常不存在函数名(PE文件如果有函数导出表则导出表中可能会记录函数名)。变量名同理。

编写一个c语言程序要求找出原函数中的函数名

在函数中需要函数名的地方写上 宏 __func__就可以了

#include stdio.h

const char* func1()

{

return __func__; //这语句类似return (char *)"func1";

}

void func2()

{

printf("call function %s\n", __func__);

}

int

main(void)

{

printf("function name %s\n", func1());

func2();

return(0);

}

运行结果:

function name func1

call function func2


分享标题:c语言编程获取函数名 C语言中函数名
本文地址:http://cdiso.cn/article/dodigig.html

其他资讯