【发布时间】:2017-04-03 16:45:00
【问题描述】:
#include <stdio.h>
#define TEST_ARR {1, 2, 3}
int main() {
printf("%d %d %d", TEST_ARR[0], TEST_ARR[1], TEST_ARR[1]);
return 0;
}
这个程序肯定不能运行,我只是想用这个例子来说明我的问题,是否可以将 MACRO 定义为数组。我很感激你的回答。
【问题讨论】:
-
为什么是 c++ 标签?
-
宏被预处理器直接替换。
[1,2,3][0]是有效的 C 代码吗? -
可能dupe ?