- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《C语言综合实验》2结构体.ppt
C语言综合实验 构造数据类型 (结构体) 1.结构体的定义及引用 结构体类型标识符的定义 结构体类型标识符的定义 结构体变量的定义 结构体变量的引用 结构体变量的引用 结构体变量的引用 结构体变量的引用 结构体变量的引用 结构体变量的引用 2 .结构体数组 结构体数组的初始化 3. 结构体与指针 类型标识符的自定义 课后习题 * 有时候需要将不同类型的数据组合成一个有机的整体,这些组合在一个整体中的数据是互相联系的。 如一个学生的信息包括学号、姓名、性别、年龄、成绩、地址等。 武汉 96.5 19 M Li Ming 08001 addr score age sex name num int num; char name[20]; char sex; int age; float score; char addr[30]; 应当把它们组织成一个组合项,在一个组合项内包含若干个类型不同(或相同)的数据项。 C语言提供了这种数据结构:允许用户将不同类型的数据组合成一个有机的整体,这些数据互相联系;这种数据结构称为结构体(structure)。 结构体的定义是指定义相应的数据结构及相应的变量。 步骤:① 先定义一个结构体类型标识符; ② 用该标识符去定义相应的变量。 struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; } ; 说明: ①、struct是关键字,不能省略:表示定义结构体; ②、student是用户自己定义的结构体类型标识符,即该结构体名; ③、结构体中具体每项的定义,由{ 和 }括起来。C语言中把用户自己定义的数据项称为成员(或称为域),即每个成员也叫结构体中的一个域。 定义一个结构体类型的一般形式: struct 结构体类型标识符 { 类型标识符1 成员名1; 类型标识符2 成员名2; …… …… 类型标识符n 成员名n; } ; 结构体名 成员表列 1、定义形式: [struct] 结构体类型标识符 变量名列表; 2、定义结构体变量的三种方法: ①、先定义结构体类型再定义变量名 struct student { int num; char name[20]; float score; }; struct student stu1,stu2; 结构体类型名 结构体变量名 97 Li 08002 92 Zhang 08001 stu1 stu2 在定义了结构体变量后,系统会为之分配内存单元。 sizeof(stu1)= 2+ 20+ 4 =26 ②、在定义结构体类型的同时定义变量 struct 结构体类型标识符 { 类型标识符1 成员名1; 类型标识符2 成员名2; …… …… 类型标识符n 成员名n; }变量名列表; struct student { int num; char name[20]; float score; }stu1, stu2; ③、直接定义结构体类型变量 struct { 类型标识符1 成员名1; 类型标识符2 成员名2; …… …… 类型标识符n 成员名n; }变量名列表; (不出现结构体类型名) struct { int num; char name[20]; float score; }stu1, stu2; 3、关于结构体类型的几点说明: ①、类型与变量是不同的概念,不要混淆: a、只能对变量赋值、存取或运算,而不能对一个类型赋值、存取或运算; b、在编译时,对类型不分配内存空间,只对变量分配空间。 ②、只有在定义变量后,才为该变量开辟存储单元。结构体变量所占的内存长度等于每个成员长度之和; struct student { int num; char name[20]; float score; }; sizeof(struct student)=26 ③、对结构体中的成员(“域”),可以单独使用,它的作用与地位相当于普通变量; ④、成员也可以是一个已定义的结构体类型变量: struct date { int year; int month; int day; }; struct student { int num; char name[20]; char sex; struct date birthda
文档评论(0)