C语言八用户自定义数据类型.PPTVIP

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计 用户自定义数据类型 1.typedef用于定义数组类型别名 typedef int ARRAY[10]; /*说明ARRAY为有10个元素的整型数组类型别名*/ ARRAY a,b; /*等价于int a[10],b[10];*/ 2.typedef用于定义结构体类型别名 typedef struct { char  number[10]; char  name[10]; float  score[5]; }STUDENT; /*说明STUDENT为一个结构体类型别名*/ STUDENT  stu; /*定义stu为上述结构体类型的变量。*/ 3.typedef用于定义共用体类型别名 typedef union { int i;   char Ch; }UTYPE;/*说明UTYPE为一个共用体类型别名。*/ UTYPE x,y;/*定义x与y为上述共用体类型的变量*/ 4.typedef用于定义枚举类型别名 typedef enum{ male,female }ETYPE; /*说明ETYPE为一个枚举类型别名*/ ETYPE sex; /*定义sex为上述枚举类型的变量*/ 5.typedef用于定义指针类型别名 typedef int * POINTER; /*说明POINTER为一个指针类型别名*/ POINTER p1; /*等价于int *p1*/ 例:若有以下类型说明,则( )是正确的叙述。 typedef union { char str[2]; int i; }sp; A)sp是一个共用体变量名 B)union sp是共用体类型名 C)sp是一个共用体类型名 D)typedef union是共用体类型名 C 例:以下对结构类型变量的定义中错误的是( ) typedef struct { int num; float age; } STUDENT; STUDENT std1; struct { int num; float age; }std1; struct student { int num; float age; }std1; struct { int num; float age; }student; struct student std1; D C语言利用结构体类型可完成这一功能。 定义了struct Student类型,把一个学生的信息number、name、age、sex合在一起,组成一个整体来处理。 结构体类型声明只是说明了一个构造型数据类型,系统没有分配任何存储空间。只有在定义了结构体变量后,系统才会分配内存单元给变量。(区分类型和变量的概念) sizeof(stu1)=22 错误:数组名不能充当左值。 对结构体变量进行初始化时,所赋初值顺序放在一对花括号中,系统按每个成员在结构体中的顺序一一对应赋初值,不允许跳过前边的成员给后面的成员赋初值,但可以只给前面的若干个成员赋初值,对于后面末赋初值的成员,如果是数值型和字符型数据,系统自动赋初值零。 各个成员的首地址相同 sizeof(u1)=4 结构体变量所占空间为结构体各成员所占空间的总和; C语言允许结构体变量作为一个整体赋值给相同类型的变量,但不允许把结构体变量作为一个整体进行输入、输出操作,也不允许结构体作为一个整体参与任何表达式计算。 联合体类型也称为共用体类型 * * 结构体类型(struct) 数组由类型相同的元素组成,但有些数据类型可能由性质不同的成员组成,这些成员相互关联组成一个整体数据。 如一个学生的信息可能包括: 学号(number):char [11] 姓名(name): char [8] 年龄(age):int 性别(sex):char 这些成员都属于某个学生的数据项,如果分别定义成相互独立的变量,则不能体现它们之间的内在联系,而在程序中应该把它们视为同一个数据类型的成员。 结构体类型 结构体类型的声明 声明结构体类型的一般形式: struct [结构体类型名] { 类型名1 结构体成员名表1; 类型名2 结构体成员名表2; …… 类型名n 结构体成员名表n; }; struct Student { char number[11]; char name[8]; int age;

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档