网站怎样和首页做链接,扫描网站漏洞的软件,想做网站濮阳网站建设,网站栏目策划 有思想的新闻目录
概念#xff1a;
枚举的声明#xff1a;
枚举的使用#xff1a;
枚举的取值#xff1a;
枚举的优点#xff1a;
#define的功能#xff1a;
而与#define对比#xff0c;枚举的优点有#xff1a; 概念#xff1a;
枚举顾名思义就是⼀⼀列举。 把可能的取值…目录
概念
枚举的声明
枚举的使用
枚举的取值
枚举的优点
#define的功能
而与#define对比枚举的优点有 概念
枚举顾名思义就是⼀⼀列举。 把可能的取值⼀⼀列举。
⽐如我们现实⽣活中
⼀周的星期⼀到星期⽇是有限的7天可以⼀⼀列举
性别有男、⼥、保密也可以⼀⼀列举
⽉份有12个⽉也可以⼀⼀列举
三原⾊也是可以一一列举
这些数据的表⽰就可以使⽤枚举了。 枚举的声明
enum Day//星期
{Mon,Tues,Wed,Thur,Fri,Sat,Sun
};enum 表示枚举的关键字不可更改。Day 表示枚举的名字或者说枚举的标签可以更改。 { }花括号内的是枚举常量没有数据类型的修饰枚举常量就是常量。
注意枚举常量是用逗号隔开的最后一个枚举常量不写逗号这和数组的写法一样数组arr[]{12345}
枚举的使用
enum Day//星期
{Mon,Tues,Wed,Thur,Fri,Sat,Sun
};int main()
{enum Day d Fri;return 0;
}枚举的用法d就表示为枚举变量并给d赋值赋值为Fri 此时d就i代表着该枚举中的Fri
并且枚举声明只是一种类型没法再内存中开辟空间只有在创建该枚举类型的变量并赋值时才算开辟了空间。
枚举的取值
enum Day//星期
{Mon,Tues,Wed,Thur,Fri,Sat,Sun
};int main()
{printf(%d\nMon);printf(%d\n, Tues);printf(%d\n, Wed);return 0;
}输出结果 由此得知枚举常量都是有值的默认从0开始依次递增1当然在声明枚举类型的时候也可以赋初值。
enum Day//星期
{Mon 1,Tues,Wed,Thur,Fri,Sat,Sun
};int main()
{printf(%d\nMon);printf(%d\n, Tues);printf(%d\n, Wed);printf(%d\nThur);printf(%d\n, Fri);printf(%d\n, Sat);printf(%d\n, Sun);return 0;
}输出结果 枚举的优点
我们可以使⽤ #define 定义常量为什么⾮要使⽤枚举
#define的功能 define有一种代替的作用且是在预处理的时候进行代码的替换处理。
#define M 100int main()
{int m M;return 0;
}
通过#define我们将M用100代替因此最后m得到的值是100而不是M。 #define再预处理的时候就将代码进行了修饰。
而与#define对比枚举的优点有
增加代码的可读性和可维护性和#define定义的标识符⽐较枚举有类型检查更加严谨。 便于调试预处理阶段会删除 #define 定义的符号。使⽤⽅便⼀次可以定义多个常量。枚举常量是遵循作⽤域规则的枚举声明在函数内只能在函数内使⽤。