欢迎来到天天文库
浏览记录
ID:39629049
大小:295.31 KB
页数:9页
时间:2019-07-07
《结构类型、枚举类型、类型别名》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、§6.7结构类型、枚举类型、类型别名1.结构类型1)数组:有限个相同类型的元素的有序的集合;若数据项都属相同数据类型时,可用数组解决;运动员成绩排序。设每位运动员资料用一个一维数组的2个元素表示:例2)当数据项不属同一数据类型时,则无法使用数组。如一个运动员基本资料构成如下:号码longnum;姓名charname[20];成绩floatscore;那就不能采用上面的处理方式了。3)结构类型:属复合数据类型。用户可以利用已定义的数据类型的数据项和系统规定的规则定义出自己所需的数据类型--结构类型。在一个结构类型中,构成它的各个成员在任一时刻均同时存在。结构类
2、型定义一般形式:struct结构类型名//只有数据成员{成员1说明;成员2说明;........成员n说明;};一个学生基本资料的结构类型student可定义如下:structstudent{longnum; //学号charname[20]; //姓名intsex; //性别intage; //年龄chardepart[30]; //主修系charaddress[30]; //住址floatscore[50]; //成绩};(推广:结构类型实际上是类的退化形式--只含有public的数据成员)例
3、4)结构变量定义:CC++:structstudents1,s2,st[100];C++:student s1,s2,st[100];5)结构成员引用(类似对象成员引用):students1,s2,st[100],*p,*q;p=&s1; //s1.num与p->num等价q=&st[5];//st[5].age与q->age等价s1.num=023511001;st[5].age=17;p->num=023511001;q->age=17;2.枚举类型(穷举法)1)适合情况:不适宜直接用数字来表示的场合:颜色,星期几,性别.....2)枚举
4、类型定义形式:enum类型名{常量1,常量2,……,常量n};3)枚举类型变量的定义、使用我们可以用新类型名字声明变量,如BOOLEANis_clsed; //声明一个布尔类型变量变量is_closed的取值范围可以是FALSE和TRUE,可以用这些枚举常量为is_closed初始化或作比较。C++语言的每一个枚举常量代表一个整数类型的值,第一个枚举常量的值为0,第二个为1,据此类推。所以我们在屏幕上输出的FALSE与TRUE的值分别为0和1。我们也可显式地改变这些枚举常量的值,如enumMETA_COLOR{ //基本颜色
5、类型(RGB)RED=4, //红色GREEN=2, //绿色BLUE=1 //蓝色}如果在声明时为某一个枚举常量赋值,那么其后没有赋值的枚举常量的值将是上一个常量的值加一。如enumMETA_COLOR{ //基本颜色类型(RGB)RED, //红色GREEN=6, //绿色BLUE=5 //蓝色CYAN //青色};这时,RED的值为0、GREEN的
6、值为6、BLUE的值为5、CYAN的值为6。3.类型别名(简单介绍)1)含义:给一个已知类型起一个别名(但并非定义一个新类型)2)使用形式:typedef原类型名(旧名字)新类型名(新名字);typedefintINTEGER; //INTEGER是int的别名以后用INTEGER来定义变量和用int定义变量等价如INTEGERa,b,c;//等价于inta,b,c;例typedefchar*string;则:stringp; //等价于char*p;3)指向函数的指针的特殊形式typedefvoid(*HANDLER)(char*)
7、;使用:HANDLERmyhandler;相当于:void(*myhandler)(char*);上一节返回下一节例
此文档下载收益归作者所有