一、枚举的介绍
/*
枚举:限制的待选项。
语法:
enum 枚举名{
选项1,
选项2,
选项3,
........
选项n
};
注意:枚举中,选项之间用 , 隔开,最后一个不用加 , ;并且枚举已 ; 结尾。
声明枚举变量:
enum 枚举名 变量名 ;
例如:enum qHand qh;
赋值:
1、先声明,后赋值
enum 枚举名 变量名 ;
变量名 = 枚举项;
例如:
enum qHand qh; //qh是变量名,enum qHand 是类型
qh = 石头;
2、声明的时候初始化
enum 枚举名 变量名 = 枚举项;
例如:
enum qHand qh = 石头; //qh是变量名,enum qHand 是类型
*/
//例如:
enum qHand{
剪刀, //0,
石头, //1,
布 //2
}
//枚举中可以写中文
二、枚举的本质
/*
枚举的作用详细说明:
1、枚举项:就是一个整数,默认情况下,从0开始,依次递增。
注意:声明一个枚举类型的变量,就相当于声明一个int类型的变量
例:enum quanHead q1; 相当于 int q1;
2、枚举项可以指定起始的值,比如说,指定10以后,后面的就是11,12,13…………
enum direction{
up = 10, //10
down, //11
left, //12
right //13
};
注意:指定起始值的“ = 数据” 写在,前面
3、枚举项的值可以随意指定,只不过它后面的值如果没有指定的话,会在它的值的基础上依次递增
例:
enum direction{
up = 10, //10
down, //11
left=30, //30
right //31
};
4、枚举项的值不能指定为小数,否则报错
5、枚举项的值可以重复
例:
enum direction{
up = 10, //10
down, //11
left=11, //11
right //12
};
6、枚举项不能重复
例:
enum direction{
up = 10, //10
down, //11
left=11, //11
left, //报错
right //12
};
7、枚举的作用:方便程序员看懂源代码
8.不能直接输出枚举项
9.枚举变量可以赋任意的整数值,因为枚举变量就是int变量
*/
//例如:
enum qh{
石头,
剪刀,
布
}
int main(int argc,const char * argv[]){
//printf("%s ",石头);//会报错,提示int类型不能转为char *(字符串) 类型。
printf("%d ",石头); //输出 0
printf("%d ",剪刀); //输出 1
printf("%d ",布); //输出 2
return 0;
}