1.局部变量:只在变量所定义的作用域内有效,所有的局部变量是自动变量,即自动创建,自动消除,关键字为:auto,但这个在我们编写程序的时候通常省略; 局部变量的生命周期是变量所在的作用域; 2.全局变量:作用范围是整个工程。 全局变量的生命周期是整个程序。 全局变量若定义时未初始化,则编译器默认是0。 那出现下图这...
4.3、结构的静态变量的命名规则: sv_<变量名> 4.4、结构的静态函数的命名规则: sf_<函数名> 5、【enum(枚举)】的命名规则: e_<枚举名> 6、【union(共用)】的命名规则: u_<结构名> 4.1、共用的成员变量的命名规则: mv_<变量名> 4.2、共用的成员函数的命名规则: mf_<函数名> 4.3、共用的静态变量的命...
enumSeason {spring, summer, autumn, winter} s;//遍历枚举元素for(s = spring; s <= winter; s++) { printf("枚举元素:%d \n", s); } 三、 变量类型(根据作用域范围的不同可以分为全局变量和局部变量) 1、全局变量 ①定义:在函数外面定义的变量 ② 作用域:从定义变量的那一行开始,一直到文件结尾...
很正常的一个枚举,但是这里要说一个枚举好的命名的事, 通常枚举命名以k开头,后面再跟上枚举类型的名称,最后再跟上当前枚举值的含义,另外还有一个就是枚举名称通常首字母要大写,所以这块写得不规范: 修改一下: 另外咱们以上面的规则咱们来修改一下枚举,看一下修改之后的可读性是不是大大增强了: 通过这样修改之...
枚举类型 联合体(共用体)类型 一.结构体类型 Ⅰ.结构体类型的声明 在深入了解结构体之前呀,让我们先来了解什么是结构体: ➡️简单来说:是C语言提供给程序员去创造一个创造属于自己类型的关键字 结构体:就是不同类型的集合,这些结构体里面的类型称为成员变量 ...
我们看看解析器对枚举类型的解析流程: 1: 读取关键字enum, 并返回标签ENUM. 2: 通过表达式ENUM_NT -> ENUM 进行reduce, 此时设置一个全局变量enumVal为0,这个全局变量的值将会在后面赋值给各个枚举变量。 3:读入变量名tag, 通过NAME_NT -> NAME 进行reduce, 此时为tag创建一个Symbol对象,于是属性堆栈便有了一...
省略枚举名称,直接定义枚举变量 enum { MON=1, TUE, WED, THU, FRI, SAT, SUN } day; 示例如下: #include<stdio.h>enumDAY{MON=1,TUE,WED,THU,FRI,SAT,SUN};intmain(){enumDAYday;day=WED;printf("%d",day);return0;} 2.2 操作枚举
使用enum关键字定义枚举类型。注意,在大括号中,定义的枚举类型常量,或者称为:枚举元素。它们是一个常量,不是变量。所以,有如下的测试例子:可以看到,我们定义了枚举类型:enumtest { a, b, c };枚举类型名称是 test,枚举类型中定义的常量列表是 a, b, c;这是一个常量列表,不是变量列表,所以,它们...
需要注意的两点是: 1) 枚举列表中的 Mon、Tues、Wed 这些标识符的作用范围是全局的(严格来说是 main() 函数内部),不能再定义与它们名字相同的变量。 2) Mon、Tues、Wed 等都是常量,不能对它们赋值,只能将它们的值赋给其他的变量。 枚举和宏其实非常类似:宏在预处理阶段将名字替换成对应的值,枚举在编译阶段...