我想在宏中获取字符串数组。
第一:有可能吗?
如果是,我可以在使用时根据索引逐个调用它们吗?
像这样的:

#define VAR    "abc", "def", "xyz"

当我想在某处使用“def”时,
FUNC(VAR[1]);

最佳答案

#define VAR(...) const char *FOO[] = { __VA_ARGS__ }
...
VAR("abc", "xyz");
printf("%s\n", FOO[0]);

但请注意:
宏是邪恶的。
在宏中声明变量是有史以来最糟糕的主意。

关于c - 宏中的字符串数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13990267/

10-12 16:04