我有,在.c
文件,下面的(这是一个非常小的阵列举例):我可以从静态const char *数组中定义下面的宏“unstringifying”吗?
static const char* __someNames[] =
{
"Fox",
"Wulf",
"Cat"
};
再后来我定义这样一个宏:
#define EXAMPLE(N) XXX
在那里我会像由__someNames[N]
没有"
..ie替代XXX,我想
#define EXAMPLE(1)
扩大到:
Wulf
我该怎么办?
编辑
一些很酷的想法。这更多是出于对知识的好奇,我想这样做。我喜欢用#include“file.h#两次重新定义宏的想法。如果我还可以使用boost预处理器(我添加了C++和boost标记来提问),我该怎么办? “file.h”呢?一个每串的#define也很酷,虽然略少的想法给我多少#define语句将有...
听起来像一个完美的XY问题,“我有这个问题X,我认为解决的办法是Y,所以我会问如何做Y“。 – 2013-02-14 22:46:26
为什么你想要它扩大到wulf?你打算如何使用它? – 2013-02-14 22:50:25
顺便说一句'__'在标识符的开始处是为编译器/ C库实现保留的。 – 2013-02-14 22:53:11