#include<stdio.h>
#define xjoin(x,y) x ## y
#define join(x,y) xjoin(x,y)
int join(join(join(x,y),z),0)()
{
return 3;
}
int main(int argc, char *argv)
{
int i = xyz0();
printf("%d /n",i);
return 0;
}
输出为 3;
结论 :由此可以得出宏的解析是由外而内层层解析的。
为了更加肯定,我再做一下测试:
此输出为: MACRO_1(1), MACRO_1(1)