c++ - C中如何定义宏实现 通过函数 获取到函数名

查看:113
本文介绍了c++ - C中如何定义宏实现 通过函数 获取到函数名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

如何定义一个宏实现获取函数名字符串,如下:

//某一函数
void fun0(){
    ....
}

//宏定义
#define GET_NAME(fun) ....... // 这个怎么写

//获取 name=="fun0"
char *name = GET_NAME(fun0)

解决方案

参考这里Concatenation

#include <stdio.h>

//宏定义
#define GET_NAME(x) #x

void fun0(){;}

int main() {
    //获取 name=="fun0"
    printf("%s", GET_NAME(fun0));  // 输出fun0
    
    return 0;
}

这篇关于c++ - C中如何定义宏实现 通过函数 获取到函数名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆