计算机二级c语言 第14章 结构体共用体和用户自定义类型.ppt

计算机二级c语言 第14章 结构体共用体和用户自定义类型.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章重点 14.1 用typedef说明一种新类型名 14.2 结构体类型 14.3 共用体 14.1 用typedef说明一种新类型名   C语言允许用户自己定义类型说明符,也就是说允许由用户为数据类型取“别名”。类型定义符typedef即可用来完成此功能,它可以C语言的基本数据类型取“别名”,也可以为用户自定义的结构类型取“别名”。例如,    typedef int INTEGER   这以后就可用INTEGER来代替int作整型变量的类型说明了。例如:   INTEGER a,b;   它等效于:   int a,b;   用typedef定义数组类型、指针类型、结构类型将带来很大的方便,不仅使程序书写简洁,而且增强了可读性。例如:   typedef char NAME[20];   表示NAME是字符数组类型,数组长度为20。然后可用NAME 说明变量,如:   NAME a1,a2,s1,s2;   完全等效于:    char a1[20],a2[20],s1[20],s2[20] typedef struct stu { char name[20]; int age; char sex; } Student;   定义Student表示struct stu的结构类型,然后可用Student来说明结构变量:   Student body1,body2;  typedef定义的一般形式为:  typedef 原类型名 新类型名   有时也可用宏定义(#define)来代替typedef的功能,但是宏定义是由预处理完成的,而typedef则是在编译时完成的,它并不只是作简单的字符替换。 14.2 结构体类型   C语言的基本数据类型有整型,实型,字符型等,在实际问题中,把一个对象抽象成数据来表示时,往往需要一组不同基本数据类型的组合。 14.2.1 结构体类型的说明 结构体类型说明的一般形式是: struct 结构体标识名 { 类型名1 结构成员名表1; 类型名2 结构成员名表2; … 类型名n 结构成员名表n; };   其中struct是关键字,是结构体类型的标志。“结构体标识名”和“结构成员名”都是用户定义的标识符。其中“结构体标识名”是可选项,在说明中可以不出现。成员表列由若干个成员组成,由一对大括号括起来,每个成员都是该结构的一个组成部分。对每个成员也必须作类型声明,其形式如下:   类型说明符 成员名;   结构体成员名表中可以含有多个同类型的成员名,它们之间用逗号分隔。例如:  struct student { int math score, ;english score, sum;};   结构体中的成员名可以和程序中的其它变量同名;不同结构体中的成员也可以同名。   在成员列表中,类型名1~类型名n不仅可以是简单数据类型,也可以是构造类型,所以也可以是某种结构体类型。这时称为结构体的嵌套。嵌套时允许内嵌结构体成员名与外层成员的名字相同。例如:   struct student { char name[10]; char sex; struct date birthday; float score[5]; };   以上说明中,birthday成员的类型struct date是一个已经说明过的结构体类型。若事先没有说明这一类型,则以上结构体类型说明可改写成如下:   struct student { char name[10]; char sex; struct  { int year;   int month;   int day;  } birthday; float score[5]; }; 14.2.2 结构体类型的变量的定义 定义结构类型变量由以下四种方法: 1.先定义结构,再说明结构变量。例如: struct student { int number; char name[31]; short age; char sex; char grade; char address[101]; }; struct student boy1, boy2; 2.在定义结构类型的同时说明结构变量。这种形式说明的一般形式为: struct 结构名 {成员表列 }  变量名表列; 例如: struct student { int

文档评论(0)

44488569 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5101121231000003

1亿VIP精品文档

相关文档