字符串和预定义功能的优先级
#include<stdio.h>#define STAGE 4
#define num(i) i
//int num(int i) { return i; }
main()
{
for(int i=0;i<STAGE;i++)
{
printf("num(i)\t");
}
}
一直感觉预定义是在代码编译之前有效的,那怎么能让 字符串中的 num(i) 被 i 替代,而不输出
num(i) num(i) num(i) num(i)
而是输出
0 1 2 3 呢?