1.结构体类型数据的定义、初始化及引用
1)描述客观世界事物——结构体类型数据的定义
例4.3 定义学生结构体。
2)结构体变量及成员的引用
先声明结构体类型再定义变量名,在声明类型的同时定义变量:
}变量名表列;
引用结构体变量中成员的方式为:
结构体变量名.成员名
如果成员本身又属一个结构体类型,则要用更多的成员运算符一级一级地定位到基本类型成员。使用结构体时只能对基本类型的成员进行各种运算,相同结构体变量可以整体赋值。
3)成员的地址和变量的地址
&结构体变量名.成员名
&结构体变量名
例4.4 对结构体变量初始化。
4)结构体数组
结构体数组定义如下:
2.指针和结构体的应用
指向结构体类型数据的指针对成员变量的引用为:
(*p).成员名
p->成员名
其中,->称为指向运算符。
例4.5 指向结构体变量的指针的应用。
运行结果:
No.:89101
3.共用体类型数据的定义及引用
1)共用体的概念
使几个不同的变量共占同一段内存的结构称为“共用体”类型的结构。
定义共用体类型变量的一般形式为:
union 共用体名
{ 成员表列
} 变量表列;
2)引用方式
不能引用共用体变量,只能引用共用体变量中的成员,采用“变量.成员”的引用方法。(www.xing528.com)
4.枚举类型数据的定义及使用
生活中有一些像星期、月份、颜色等事物,它们往往只有几个数值,而且常常有专用的英文缩写来表示。C语言用枚举类型来定义这类数据。
用枚举类型定义一个变量后,给这个变量赋值时就只能使用这几个文字数值之中的一个了。也可以说,用文字表示有限的几个数值的类型就是枚举类型。枚举类型不是系统提供的,而是由编程人员自己定义的。
另外,像逻辑运算的真、假值,人的性别的男、女值等都可以用枚举类型来描述定义。
申明枚举类型用enum,如:
enum weekday{sun,mon,tue,wed,thu,fri,sat};
枚举常量:sun,mon,tue,wed,thu,fri,sat
枚举常量按定义时的顺序使它们的值为0,1,2…
定义枚举变量:
enum weekday workday,week-day;
enum{sun,mon,tue,wed,thu,fri,sat}workday;
变量值只能是sun到sat之一。
5.用typedef定义类型
(1)声明INTEGER为整型:
typedef int INTEGER
(2)声明结构类型:
typedef struct{
int month;
int day;
int year;}DATE;
(3)声明字符指针类型:
typedef char *STRING;
(4)定义数组类型:
① 先按定义数组变量形式书写:
int n[100];
② 将变量名n换成自己指定的类型名:
int NUM[100];
③ 在前面加上typedef,得到:
typedef int NUM[100];
④ 用来定义变量:NUM n;
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。