我需要编写一个多行宏。我需要这样做是因为我必须将部分代码“粘贴”到代码中的特定点。我怎样才能做到这一点?
最佳答案
从您的问题中并不清楚您实际上想要什么,但是一个普通的多行宏定义如下:
#define FOO something; \
something_else;
当然,请注意
if .. else
问题。如果这适用于您的情况,则可以将其包装到do { ... } while(0)
构造中。这将确保将其视为单个语句。#define FOO do \
{ \
something; \
something_else; \
} while (0)