the*_*e_e 1 c macros stringification c-preprocessor
我需要由供应商的工具生成一堆生成的函数.由于每个功能的内部功能完全相同,我想我可以使用宏来让我的生活更轻松.
这是违规警告:
pasting "<function_name>" and "(" does not give a valid preprocessing token
Run Code Online (Sandbox Code Playgroud)
现在,我定义我的宏如下:
#define HANDLE_FUNCTION(x) \
void <function_prefix>_ ## x ## (void) \
{ \
x ## _Flag = TRUE; \
}
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我写道:
HANDLE_FUNCTION(fn1)
HANDLE_FUNCTION(fn2)
Run Code Online (Sandbox Code Playgroud)
...等等
有关为何发生这种情况的想法?