2011年软件水平考试程序员之程序设计知识点27
7.4 用户自定义类型
C语言也提供类型定义外化成为类型命名的机制。让用户定义新的类型,并用这些新类型定义变量。用户自定义类型的方法为:
typedef 类型 用户自定义类型名;
其中类型可以是基本类型,也可以是前面用户自定义的类型,也还可以是任何C语言允许的类型描述,如数组类型、结构型、共用型、枚举型,及各种指针类型。用户自定义类型名是标识符,以后就可用该用户自定义类型名定义相应类型的变量。例如:
typedef int INTEGER;
tyPedef struet {
int num;
char * name;
char sex;
int age;
int score;
} stdType; /*定义结构型stdType */
typedef int INTARRAy[20] ; /* 含 20个整数的数组类型 INTARRAY */
typedef enum { RED, YELLOW, BLUE } COLOR; /* 枚举型COLOR */
typedef char *CHP; /* 定义字符指针类型CHP */
利用以上类型定义,可定义变量如下:
INTEGER X,Y; /* 定义int类型变量 x和 y */
stdType std1,std2; /* 定义两个结构变量 */
INTARRAY v1, v2; /* 定义两个各含20个整数的数组 */
COLOR c1,c2; /* 定义两个枚举变量 */
CHP cp1, cp2; /* 定义字符指针变量cpl和cp2 */
在以上变量定义中,对于结构、枚举等类型,不必再冠相应的类型类别关键字。特别对于数组类型,当有多个数组变量成员类型相同、数组元素个数也相同时,先用typedef定义一个数组类型,然后再定义数组变量就比较方便、简洁。
通常,在组织复杂的程序时,不同源程序文件中用到的同一数据类型,如数组、结构、共用型、指针等,常用外typedef定义来给有关数据类型命名,并将这些类型定义单独放在一个源文件中,凡要用到它们的源文件,就用# include预处理命令将它包含进来。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>