以下是源代码:
#include <stdio.h>
enum coordinate_type{ RECTANGULAR = 1,POLAR };
int main(void)
{
int RECTANGULAR;
printf("%d %d\n",RECTANGULAR,POLAR);
return 0;
}
为什么结果如下:
3 2
答案 0 :(得分:5)
您正在重新定义主要功能中的RECTANGULAR。它被初始化为“随机”值,在这种情况下它是3,但它可能是其他任何东西。
由于枚举的定义方式,POLAR将其值设为2。
尝试在main中重新定义RECTANGULAR变量以查看不同的输出。