为所有函数添加命名空间字符串

Sum*_*mit 4 c

在C中,我想为我希望它发生的所有函数添加一个名称空间前缀字符串(不带引号),然后在任何时候轻松更改名称空间字符串.

我的方法:

#define NAMESPACE project_name

void NAMESPACE_func_name()
{
}

That should become:

void project_name_func_name()
{
}
Run Code Online (Sandbox Code Playgroud)

这可能吗,怎么样?提前感谢您的帮助.

Som*_*ude 7

您可以使用宏连接运算符和类似函数的宏来执行此操作:

#define NAMESPACE(name) project_name_ ## name

void NAMESPACE(func_name)(void)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)