目标C - 如何编写宏

And*_*ino 3 macros multiline c-preprocessor

我需要编写一个多行宏.我需要这个,因为我必须将部分代码"粘贴"到我的代码中的特定点.我怎样才能做到这一点?

Lin*_*cer 10

从你的问题中你不清楚你真正想要什么,但是一个简单的多行宏定义如下:

#define FOO something; \
            something_else;
Run Code Online (Sandbox Code Playgroud)

当然,要小心这个if .. else问题.如果这适用于您的情况,您可以将事物包装到do { ... } while(0)构造中.这将确保将其视为单个陈述.

#define FOO do                 \
            {                  \
               something;      \
               something_else; \
            } while (0)
Run Code Online (Sandbox Code Playgroud)