最近看到某个例子使用重复的宏定义,原来可以这样做,最后简单测试一下。
得到的结论就是:
多次重复宏定义的宏名,最后以最后一次定义的为准。
测试代码
#include <stdio.h>
#define KEY_1 11
#define KEY_1 22
#define KEY_1 33
int main(void)
{
printf("KEY_1 = %d!\n\n",KEY_1);
return 0;
}
测试结果
不过,可以看出,编译器也是出现了警告,还是不建议这样使用,这么多名字呢,为什么非得重名使用呢?