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

网站优化含义南宁市建筑规划设计集团有限公司

网站优化含义,南宁市建筑规划设计集团有限公司,浙江外发加工网,装修设计学校排行榜枚举详解 语法格式使用枚举类型对变量进行声明枚举声明的注意事项枚举变量的赋值使用案例综合使用 在程序中#xff0c;可能需要为某些整数定义一个别名#xff0c;我们可以利用预处理指令#define来完成这项工作。 #define MON 1 #define TUE 2 #define WED 3 #define… 枚举详解 语法格式使用枚举类型对变量进行声明枚举声明的注意事项枚举变量的赋值使用案例综合使用 在程序中可能需要为某些整数定义一个别名我们可以利用预处理指令#define来完成这项工作。 #define MON 1 #define TUE 2 #define WED 3 #define THU 4 #define FRI 5 #define SAT 6 #define SUN 7对此C语言提供了更好的方式枚举类型enumerated type 可以用枚举类型enumerated type声明符号名称来表示整型常量。使用enum关键字可以创建一个新“类型”并指定它可具有的值。枚举类型的目的是提高程序的可读性。它的语法与结构的语法相同。 注实际上enum 常量是int类型因此只要能使用int类型的地方就可以使用枚举类型 语法格式 enum 枚举类型标识名 {枚举成员1 枚举成员2, … , 枚举成员n}; enum DAY {MON, TUE, WED, THU, FRI, SAT, SUN}; enum spectrum {red 1, orange, yellow, green, blue, violet};enum DAY COLOR MON; enum spectrum color red;printf(%d\n, COLOR); // 0 printf(%d\n, color); // 1(1) 枚举型是一个集合集合中的元素(枚举成员)是一些命名的整型常量元素之间用逗号,隔开。 (2) DAY, spetrum 是一个标识符可以看成这个集合的名字是一个可选项即是可有可无的项。 (3) 第一个枚举成员的默认值为整型的0后续枚举成员的值在前一个成员上加1。 (4) 可以人为设定枚举成员的值从而自定义某个范围内的整数。 (5) 枚举型是预处理指令#define的替代。 (6) 类型定义以分号;结束。 使用枚举类型对变量进行声明 方法一、枚举类型的定义和变量的声明分开 enum DAY {MON1, TUE, WED, THU, FRI, SAT, SUN };enum DAY tomorrow; //变量tomorrow的类型为枚举型enum DAY enum DAY good_day, bad_day; //变量good_day和bad_day的类型均为枚举型enum 方法二类型定义与变量声明同时进行 enum //跟第一个定义不同的是此处的标号DAY省略这是允许的。 {saturday,sunday 0,monday,tuesday,wednesday,thursday,friday } workday; //变量workday的类型为枚举型enum DAYenum BOOLEAN { false, true } end_flag, match_flag; //定义枚举类型并声明了两个枚举型变量 end_flag, match_flag方法三用typedef关键字将枚举类型定义成别名并利用该别名进行变量声明 typedef enum workday {saturday,sunday 0,monday,tuesday,wednesday,thursday,friday } workday; //此处的workday为枚举型enum workday的别名workday today, tomorrow; // 变量today和tomorrow的类型为枚举型workday也即enum workday // enum workday中的workday可以省略也可以用这种方式 typedef enum workday {saturday,sunday 0,monday,tuesday,wednesday,thursday,friday };workday today, tomorrow; //变量 today和 tomorrow的类型为枚举型workday也即enum workday枚举声明的注意事项 注意同一个程序中不能定义同名的枚举类型不同的枚举类型中也不能存在同名的命名常量。错误示例如下所示 错误声明一存在同名的枚举类型 typedef enum {wednesday,thursday,friday } workday;typedef enum WEEK {saturday,sunday 0,monday, } workday;// 定义了两个相同的枚举类型 workday错误声明二存在同名的枚举成员 typedef enum {wednesday,thursday,friday } workday_1;typedef enum WEEK {wednesday,sunday 0,monday, } workday_2;//在枚举类型 workday_1 与 枚举类型 workday_2中 都有枚举成员 wednesday注在同一个程序中不能定义相同的枚举类型名以及所有的枚举成员不能相同使得枚举类型名可以不定义。 枚举变量的赋值 (1) 默认情况下枚举列表中的常量都被赋予0、1、2等。因此下面的声明中nina的值是3 enum kids {nippy, slats, skippy, nina, liz}; (2) 在枚举声明中可以为枚举常量指定整数值 enum levels {low 100, medium 500, high 2000}; (3) 如果只给一个枚举常量赋值没有对后面的枚举常量赋值那么后面的 常量会被赋予后续的值。 例如假设有如下的声明 enum feline {cat, lynx 10, puma, tiger}; 那么cat的值是0默认lynx、puma和tiger的值分别是10、11、12。 使用案例 枚举类型的目的是为了提高程序的可读性和可维护性 一类型定义变量声明赋初值同时进行。 #include stdio.h/* 定义枚举类型同时声明该类型的三个变量并赋初值。它们都为全局变量 */ enum DAY {MON1, TUE,WED,THU,FRI,SAT,SUN } yesterday MON, today TUE, tomorrow WED;/* 定义三个具有基本数据类型的变量并赋初值。它们都为全局变量 */ int x 10, y 20, z 30;void main() {printf(%d %d %d \n, x, y, z); //输出10 20 30printf(%d %d %d \n, yesterday, today, tomorrow); //输出1 2 3 }#includestdio.henum {BELL \a,BACKSPACE \b,HTAB \t,RETURN \r,NEWLINE \n,VTAB \v,SPACE };enum BOOLEAN { FALSE 0, TRUE } match_flag;void main() {int index 0;int count_of_letter 0;int count_of_space 0;char str[] Im Ely efod;match_flag FALSE;for(; str[index] ! \0; index)if( SPACE ! str[index] )count_of_letter;else{match_flag (enum BOOLEAN) 1;count_of_space;}printf(%s %d times %c, match_flag ? match : not match, count_of_space, NEWLINE);printf(count of letters: %d %c%c, count_of_letter, NEWLINE, RETURN); } 枚举类型与sizeof运算符 #include stdio.henum escapes {BELL \a,BACKSPACE \b,HTAB \t,RETURN \r,NEWLINE \n,VTAB \v,SPACE };enum BOOLEAN { FALSE 0, TRUE } match_flag;void main() {printf(%d bytes \n, sizeof(enum escapes)); //4 bytesprintf(%d bytes \n, sizeof(enum BOOLEAN)); //4 bytesprintf(%d bytes \n, sizeof(match_flag)); //4 bytesprintf(%d bytes \n, sizeof(SPACE)); //4 bytesprintf(%d bytes \n, sizeof(FALSE)); //4 bytesprintf(%d bytes \n, sizeof(0)); //4 bytes }无论是枚举类型、枚举成员、枚举类型变量 都是四个字节int类型。 综合使用 (一)、在switch语句 中可以把枚举常量作为标签 #includestdio.henum Season {spring, summer100, fall96, winter };typedef enum {Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } Weekday;void main() {/* Season */printf(%d \n, spring); // 0printf(%d, %c \n, summer, summer); // 100, dprintf(%d \n, fallwinter); // 193Season mySeasonwinter;if(wintermySeason)printf(mySeason is winter \n); // mySeason is winterint x100;if(xsummer)printf(x is equal to summer\n); // x is equal to summerprintf(%d bytes\n, sizeof(spring)); // 4 bytes/* Weekday */printf(sizeof Weekday is: %d \n, sizeof(Weekday)); //sizeof Weekday is: 4Weekday today Saturday;Weekday tomorrow;if(today Monday)tomorrow Tuesday;elsetomorrow (Weekday) (today 1); //remember to convert from int to Weekday }(二)、用枚举常量表示数组的大小 #include stdio.henum COLOR {RED, TELLOW, GREEN, NumCOLORS};int main() {int color -1;char *ColorNames[NumCOLORS] {red, yellow, green,};char *colorName NULL;printf(请输入你喜欢的颜色代码);scanf(%d, color);if ( color 0 color NumCOLORS){colorName ColorNames[color];}else{colorName unkonw;}printf(你喜欢的颜色是 %s\n, colorName);return 0; }// 请输入你喜欢的颜色代码2 // 你喜欢的颜色是 green注 对于 “ enum COLOR {RED, TELLOW, GREEN, NumCOLORS}; ” 当没有给枚举变量成员赋值时最后可以多设置一个枚举变量 刚好可以表示枚举成员变量的数量。如 NumCOLORS在没有设置默认值时为 3. 这样要遍历所有的枚举量或者需要建立一个用枚举量做下标的数组的时候很方便。 参考博客 https://blog.csdn.net/qq_41673920/article/details/85261762
http://www.w-s-a.com/news/373654/

相关文章:

  • 山西省住房和城乡建设厅网站报名wordpress添加标签插件
  • 网站怎么自己做外贸网站案例
  • 做网站的优势公司网站怎么做站外链接
  • 海城网站制作建设精准营销的营销方式
  • 北京短视频拍摄公司重庆网站seo推广公司
  • 广州免费推广网站建设4399网页游戏大全
  • 网站的构架与组成建站公司兴田德润
  • php网站部署步骤邯郸哪有做网站的
  • 做设计什么设计比较好的网站南充市住房和城乡建设局考试网站
  • 郑州做系统集成的公司网站龙岩
  • 厦门SEO_厦门网站建设网络营销课程视频
  • vs 2015 网站开发开网店在线咨询
  • 前端如何优化网站性能大学学校类网站设计
  • 中国铁路建设投资公司网站熊学军中国it外包公司排名前50
  • 房产网站的建设广州推广排名
  • 湟源县网站建设wordpress删除未分类
  • 营销型网站开发推广厦门百度seo公司
  • 遵义网站开发培训上海中高风险地区名单最新
  • 禹州市门户网站建设做网站可以申请个体户么
  • 大良营销网站建设效果彩票网站搭建 做网站
  • 做网站的公司为什么人少了在中国如何推广外贸平台
  • 盘锦网站制作工业电商网站怎么配色
  • 白云企业网站建设seo排名点击软件
  • wordpress跨站脚本攻击漏洞国外注册的域名国内能用吗
  • 西部数码网站管理助手2工信部资质查询网站
  • 公司网站哪个建的好吉林网站制作
  • 视频网站怎么引流wordpress私人玩物
  • 我的家乡湛江网站设计新钥匙网站建设
  • 辽宁网站推广爱前端wordpress5.0.3主题
  • python怎么做网站贵阳网站制作