繁体   English   中英

如何定义函数声明宏

[英]How to define function declaration macro

我有以下问题:我需要定义一个必须使用的宏,而不是使用正则C表达式。

例如我想要这样:

THREAD(FIRST) 

...被这个代替

void THREAD_FIRST(void) 

...在代码中。

我尝试了这个:

#define THREAD(x)    void THREAD_#x(void)

...但是没有用。 也许在void之后的void是不允许的。 有什么想法如何解决吗?

您使用了错误的预处理程序运算符,要使用##而不是#进行令牌粘贴

#define THREAD(x)    void THREAD_##x (void)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM