我需要编写一个多行宏。我需要这个,因为我必须将部分代码“粘贴”到我的代码中的特定点。我怎么能这样做?
答案 0 :(得分:10)
你的问题并不是很清楚你真正想要的是什么,但是一个简单的多行宏定义如下:
#define FOO something; \
something_else;
当然,要注意if .. else
问题。如果这适用于您的情况,您可以将事物包装到do { ... } while(0)
构造中。这将确保将其视为单一陈述。
#define FOO do \
{ \
something; \
something_else; \
} while (0)
答案 1 :(得分:2)
使用C中的反斜杠字符。
#define NINE (3 \
+ 3)
答案 2 :(得分:0)