第10章结构体与其它数据类型讲述.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章结构体与其它数据类型讲述

第10章 结构体与其它数据类型 本章教学目的: 理解结构体和共用体的概念,掌握结构体数组和结构体指针的使用方法,了解用指针处理链表的基本操作,了解枚举类型的概念和用typedef定义类型的方法。 本章教学重点: 结构体和共用体的概念,结构体数组和结构体指针。 本章教学难点: 用指针处理链表。 本章作业: 172页10.1中的2、4,10.2中的2、4 10.1 结构体的概念 有时需要将不同类型的数据组合成一个有机的整体,以便于引用。这些组合在一个整体中的数据是互相联系的。如一个学生的学号、姓名、性别、年龄、成绩、家庭住址等项。 如果将num、name、sex、age、score、addr分别定义为互相独立的简单变量,是难以反映它们之间的内在联系的。应把它们组织成一个组合项,一个组合项中包含若干个类型不同(也可以相同)的数据项。 例如,要用一个结构体来描述学生,每个学生,有学号、姓名、年龄、性别、成绩等数据。每项数据有不同的类型,类型为:学号(无符号整型)、姓名(字符型)、性别(字符型)、年龄(整型)、成绩(实型)等。要把这些和学生关联在一起,则需要声明以下结构体类型: struct student {unsigned num; char name[10]; char sex; int age; float score; }; 其中struct 是结构体的关键字;student是结构体的标识符,即结构体名;num、name[10]、sex、age、score 等是结构体成员,组成成员表列。 结构体的类型声明方式为: struct 结构体名 { 成员表列; }; 其中各成员应进行类型说明。 结构体类型声明时应注意以下几点: (1) 结构体类型声明并不引起内存分配,结构体类型变量的定义才引起内存的分配。 (2) 在声明结构体类型时,允许先声明过的结构体类型作另一个结构体类型的成员,如右所示。 10.2 结构体类型变量和数组 10.2.1 结构体类型变量 ? 1.结构体类型变量的定义 结构体变量定义有三种方法。 (1) 先声明结构体类型, 后定义变量。 这种方法的语法格式为: struct 结构体名 { 成员表列; }; struct 结构体名 结构体变量表; 例如: struct student { unsigned num; char name[10]; char sex; int age; float score; }; struct student student1,student2; 定义了student结构体类型的2个变量:student1,student2。 (2) 在声明结构体类型 的同时定义变量。 这种方法的语法格式为: struct 结构体名 { 成员表列; }结构体变量表; 例如: struct student { unsigned num; char name[10]; char sex; int age; float score; }student1,student2,student3; 定义了student结构体类型的三个变量:student1,student2,student3。 (3) 直接定义变量。 这种方法的语法格式为: struct { 成员表列; } 结构体变量表; 例如: struct { unsigned num; char name[10]; char sex; int age; float score; }student1,student2,student3; 直接定义了结构体类型的三个变量student1、student2和student3。但这种定义方式因无类型名,所以不能再定义更多的变量。 定义了一个结构体类型的变量后,系统就为其按结构分配相应的内存,其大小取决于结构体的具体成员,如前面所举的例子中,

文档评论(0)

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

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

1亿VIP精品文档

相关文档