《c语言程序设计》第8章结构体、共用体与枚举类型

《c语言程序设计》第8章结构体、共用体与枚举类型

ID:40002175

大小:531.00 KB

页数:45页

时间:2019-07-17

《c语言程序设计》第8章结构体、共用体与枚举类型_第1页
《c语言程序设计》第8章结构体、共用体与枚举类型_第2页
《c语言程序设计》第8章结构体、共用体与枚举类型_第3页
《c语言程序设计》第8章结构体、共用体与枚举类型_第4页
《c语言程序设计》第8章结构体、共用体与枚举类型_第5页
资源描述:

《《c语言程序设计》第8章结构体、共用体与枚举类型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章结构体、共用体与枚举类型本章要求:理解结构体类型的概念,掌握结构体变量的定义和使用掌握结构体数组、结构体指针的定义和使用理解共用体的概念,掌握共用体变量的定义和使用了解枚举数据类型及自定义数据类型的使用理解链表的概念,初步掌握动态链表的常见操作本章重点:结构体变量的定义和使用链表的概念本章难点:动态链表的常见操作8.1结构体类型与结构体变量8.1.1结构体概述数组是一种简单构造类型数据,数组中的各元素是属于同一个类型的。但在实际问题中,常会遇到这样一类数据,它由多个类型不相同的数据项组成。 学生基

2、本情况:学号、姓名、性别、年龄、成绩…结构体(structure)是一种数据类型。C语言本身没有提供具体的结构体类型,但提供了说明结构体类型的方法。8.1.2结构体的声明声明结构体类型的一般形式:struct结构体名{类型标识符成员名;类型标识符成员名;…………….};成员类型可以是基本型或构造型struct关键字,不能省略合法标识符可省:无名结构体structstudent{intnum;charname[20];charsex;intage;};8.1.3结构体变量的定义定义好一个结构体类型后,我们

3、可以将其看作是和int、char、float等数据类型一样的一个新的数据类型。1.先定义结构体类型,再定义结构体变量struct结构体名{类型标识符成员名;类型标识符成员名;…………….};struct结构体名变量名表列;structstudent{intnum;charname[20];charsex;intage;};structstudenta,b;numnamesexage…2字节20字节1字节2字节intx;xastructstudentt;可多次使用structstudent来定义变量2.定

4、义结构体类型的同时定义结构体变量struct结构体名{类型标识符成员名;类型标识符成员名;…………….}变量名表列;structstudent{intnum;charname[20];charsex;intage;}a,b;3.直接定义结构体变量structstudentt;用无名结构体直接定义变量只能一次8.1.4结构体变量的引用格式引用规则:结构体变量不能整体引用,只能引用变量成员引用方式:结构体变量名.成员名structstudent{intnum;charname[20];charsex;int

5、age;floatscore;charaddr[30];}stu1,stu2;成员(分量)运算符优先级:1结合性:从左向右stu1.num=10;stu1.score=85.5;stu1.score+=stu2.score;stu1.age++;printf(“%d,%s,%c,%d,%f,%s”,stu1);stu1={101,“WanLin”,‘M’,19,87.5,“DaLian”};结构体嵌套structdate{intmonth;intday;intyear;};structperson{

6、charname[20];charsex;structdatebirthday;};若有定义:structpersonperson1;namesexbirthdaymonthdayyear合法:person1.sex=‘F’;person1.birthday.day=35;同类型结构体变量间的整体赋值,及变量的初始化structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu1,stu2;stu1={101,“

7、WanLin”,‘M’,19,87.5,“DaLian”};stu1=stu2;初始化:structstudentstua={101,“WanLin”,‘M’,19,87.5,“DaLian”};={111,“Tom”,‘M’,19,60,“USA”};8.1.6指向结构体的指针指向结构体变量的指针的值是该结构体变量所分配的存储区域的首地址。结构指针变量的定义structstudent{intnum;charname[20];charsex;intage;}stu;structstudent*p=&st

8、u;numnamesexage…stup通过指针访问结构体变量的成员①结构变量名.成员名(名字引用);②结构指针->成员名(指针引用);③(*结构指针).成员名(将指针转化为名字引用);structstudent{intnum;charname[20];charsex;intage;}stu;structstudent*p=&stu;stu.age=8;p->age=8;(*p).age=8;stup8.2结构体数组8.2.1结构体数组的定

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。