在C中,我想在我希望它发生的所有函数中添加一个名称空间前缀字符串(不带引号),稍后可以随时更改名称空间字符串。
我的方法:
#define NAMESPACE project_name
void NAMESPACE_func_name()
{
}
That should become:
void project_name_func_name()
{
}
这可能,怎么样? 提前感谢您的帮助。
答案 0 :(得分:7)
您可以使用宏连接运算符和类似函数的宏来执行此操作:
#define NAMESPACE(name) project_name_ ## name
void NAMESPACE(func_name)(void)
{
...
}
答案 1 :(得分:2)
您可以使用宏concatenation
执行此操作#define NAMESPACE(function) project_name ## function
void NAMESPACE(func_name)()
{
}