gpt4 book ai didi

c - 获取函数名称作为符号(而不是字符串)- C 预处理器

转载 作者:太空宇宙 更新时间:2023-11-04 03:04:21 25 4
gpt4 key购买 nike

C 中有没有办法获取我可以使用标记粘贴的函数名称(我知道 __FUNCTION____func__,但它们不会在预处理时扩展为名称,而且我不想将名称作为字符串)。

我希望能够做这样的事情:prefix_ ## __func_name__ ,以便在名为 func1() 的函数中,我可以访问符号 prefix_func1

(也许我还能用string,然后用dlsym,但是想知道有没有GCC 中更简单的替代方案,无需担心可移植性)。

最佳答案

您可以使函数标识符成为一个宏,如

#define FUNC1 func1

void FUNC1(void)
{
...
}

然后使用FUNC1 进行 token 粘贴。

关于c - 获取函数名称作为符号(而不是字符串)- C 预处理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7547479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com