当前位置: 首页 > wzjs >正文

亚洲做性视频网站建站公司最新排名

亚洲做性视频网站,建站公司最新排名,网站代码怎么放,专做立体化的网站在前面,我们已经对C语言的结构体有了细致的了解,今天我们继续学习下一个C语言自定义数据类型——枚举类型。 目录 一、什么是枚举: 二、枚举类型的特性: (1)枚举类型是本质是int: &#xf…

在前面,我们已经对C语言的结构体有了细致的了解,今天我们继续学习下一个C语言自定义数据类型——枚举类型。

目录

一、什么是枚举:

二、枚举类型的特性:

(1)枚举类型是本质是int:

(2)枚举类型值的设计规则:

规则一:枚举类型的第一个值,如果你不指定的话,往往是0:

规则二:枚举类型后面的值会在前面值的基础上依次递增1个单位;

规则三:枚举类型的值可被手动指定,且由于规则二存在,这可能会连贯地影响后面枚举常量的值

 (3)枚举类型声明的是常量:

(4)枚举类型的初始化:

三、枚举类型的优势:


一、什么是枚举:

枚举,顾名思义就是一一列举,针对某一类群体,把它所有可能的取值一一列举出来。

我们日常生活中其实有很多这样的可以被枚举出来的例子:比如说人的性别有男有女,再例如说颜色有三原色——红色(Red),绿色(Green),蓝色(Blue)......

在C语言里面,我们用enum关键字来声明一个枚举类型。如下是“Color”的枚举类型的声明:

enum Color
{RED,GREEN,BLUE
};

然后和结构体是一样的,未来如果你想去定义一个枚举类型的变量,你不能说我直接Color c,注意Color,enum Color才是一个完整的数据类型!!!

二、枚举类型的特性:

(1)枚举类型是本质是int:

首先在这里我们要给大家建立一个认识,即:C语言里所有的自定义类型都是在内置类型(int,double,char)的基础上形成的。无论未来你写的自定义类型有多花,最后都得落实到一个具体的自定义类型!

强如枚举类型,也仅仅只是C语言中某个内置类型的抽象结果罢了,而这个内置类型正是我们的int

有了上面的理解你就能很快地理解下面这段代码的输入和输出:

#include<stdio.h>
enum Color
{RED,GREEN,BLUE
};
int main()
{enum Color c1 = RED;//这里会先打印一个int类型的值:printf("%d\n", c);//这里会得到“4”这样的结果:printf("sizeof(c) == %zd", sizeof(c));//下面这种写法是允许的:另一方面,对于类型检查很严格的C++编译器这可能不让通过。int s = GREEN;enum Color c2 = 30;return 0;
}

(2)枚举类型值的设计规则:

关于枚举类型值的设计规则,我们一般只想谈以下三点:

规则一:枚举类型的第一个值,如果你不指定的话,往往是0:
#include<stdio.h>
enum Color
{RED,GREEN,BLUE
};int main()
{printf("%d", RED);return 0;
}

运行结果

规则二:枚举类型后面的值会在前面值的基础上依次递增1个单位;
#include<stdio.h>
enum Color
{RED,GREEN,BLUE
};int main()
{printf("%d\n", RED);printf("%d\n", GREEN);printf("%d", BLUE);return 0;
}

运行结果

 

规则三:枚举类型的值可被手动指定,且由于规则二存在,这可能会连贯地影响后面枚举常量的值
#include<stdio.h>
enum Color
{RED,GREEN = -1,BLUE
};int main()
{printf("%d\n", RED);printf("%d\n", GREEN);printf("%d", BLUE);return 0;
}

运行结果

 


 (3)枚举类型声明的是常量:

以enum Color为例子,枚举类型里所声明的RED,GREEN...其实是一个个的int类型的常量(因此枚举也叫枚举常量),由于是常量,所以枚举类型的值不能被修改!因此下面这种写法是不被允许的:

#include<stdio.h>
enum Color
{RED,GREEN,BLUE
};
int main()
{//ERROR:枚举类型是常量,它的值不能被修改:BLUE = 10;
}

(4)枚举类型的初始化:

枚举类型本质是int类型,所以一个枚举类型的变量在初始化时,既可以用所声明的枚举常量来初始化,也可以用int类型的字面常量来初始化。

即:下面这两种写法在C语言层面都是正确的(C++编译器对类型检查更严格,可能不让通过):

//用枚举常量初始化枚举变量:
enum Color c1 = RED;
//用int类型的字符常量来初始化枚举变量:
enum Color c2 = 30;

三、枚举类型的优势:

枚举类型出来的那些东西是常量,嗯......OK既然是常量的话,这好像和#define声明标识符常量也没什么两样啊。

那在这里呢,枚举类型相比#define定义的表示符常量还是有一些不可替代的优势在里面,一般来说枚举类型有以下几点优势:

  • 和#define相比,枚举类型有类型检查,而#define的做法是直接替换,不够严谨;
  • #define定义的常量在调试阶段会被替换,而枚举常量不会,相较之下,枚举常量更有利于调试。
  • 枚举常量的使用更加方便,可以一次性定义多个常量,而#define的标识符常量一次只能定义一个。

文章转载自:

http://IFanfPBj.tpnxj.cn
http://vRm9GJx8.tpnxj.cn
http://GoQRZXJa.tpnxj.cn
http://O4vYnFF8.tpnxj.cn
http://BlCP4llY.tpnxj.cn
http://y6AIRHfA.tpnxj.cn
http://bE6ajI9m.tpnxj.cn
http://g6ecxXE4.tpnxj.cn
http://Jyrp2f7p.tpnxj.cn
http://Cga6Vi3D.tpnxj.cn
http://2ASwPilA.tpnxj.cn
http://nFjGNi4k.tpnxj.cn
http://XKBzunWe.tpnxj.cn
http://8P3Ww4aU.tpnxj.cn
http://m4CXJOTA.tpnxj.cn
http://J016i0yd.tpnxj.cn
http://ma3JbGqt.tpnxj.cn
http://KabC329v.tpnxj.cn
http://eBLJeX9C.tpnxj.cn
http://6C2UTjQt.tpnxj.cn
http://oqMsblMw.tpnxj.cn
http://zggdY3n5.tpnxj.cn
http://4U9f4BpU.tpnxj.cn
http://iGC7ruRu.tpnxj.cn
http://061hUDCx.tpnxj.cn
http://kkxNFlOJ.tpnxj.cn
http://mlEumTwf.tpnxj.cn
http://DqZTCPMO.tpnxj.cn
http://uopYodnQ.tpnxj.cn
http://dIkXRH6W.tpnxj.cn
http://www.dtcms.com/wzjs/644627.html

相关文章:

  • 旅游网站开发答辩ppt软件开发专业知识技能
  • 焦作网站开发公司电话旅游网站建设导航栏
  • 抄袭网站后台会侵权吗网站开发技术可行性
  • 网站自动跳转怎么办什么是网站的二级目录
  • 手机站网站布局怎么搞一个网站平台
  • 南京网站制作哪家专业付费链接生成软件
  • 温州网站 公司著名建筑网站
  • 美食网站建设背景免费建站手机软件
  • 浙江网站建设方案优化iis建设网站
  • 网站建设中网站功能描述书功能网络推广平台在哪里有
  • 网站下载的软件怎么安装珠海市做网站
  • 做3d办公家具教程的网站工业设计公司有哪些
  • 怎么免费建设自己网站企业网站备案怎么填写
  • 2003访问网站提示输入用户名密码景县做个油管的网站怎么做
  • 网站开发的经验工业品企业网站源码
  • 做网站需要续费吗学前教育网站建设
  • 九江网站开发网站建设 三牛
  • 有做国际网站生意吗网站建设小企业案例
  • 网站从新建设影响收录么江苏市场监督管理局电话
  • 苏州建网站的公司哪家口碑好收银系统软件一套多少钱
  • 高端网站建设服务器广州企业建站 网络服务
  • 东莞网站制作公司报价企业163邮箱登录
  • 百度推广帮做网站玉环做企业网站
  • 茂名网站建设建站系统天眼网
  • 外网网址可以做英语阅读的网站个人电脑建网站
  • 购物网站修改文案网站需要数据库
  • 佛山网站设计哪家便宜万户网络是干什么的
  • 网站建设材料汇报网店营销推广实训平台
  • 建筑资质查询官方网站广告设计公司广告设计
  • 网站建设内容录入论文做网站 怎么提升浏览量