欢迎来到天天文库
浏览记录
ID:33470590
大小:299.00 KB
页数:70页
时间:2018-05-25
《c++程序设计课程介绍-第8章数据封装—结构体课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第8章数据封装—结构体结构体的概述结构体类型的定义结构体类型的变量结构体数组结构体作为函数的参数链表结构体的概念打印学生成绩单,格式如下:学号姓名语文成绩数学成绩英语成绩.00001张三96948800003李四89707600004王五908778如何在程序中表示这组学生信息?可选方案用二维的数组来表示该方案不可行,因为这些信息有不同的类型每一列用一个一维数组来表示,这种方法称为并联数组。要保证每位学生信息的完整性和正确性很难为什么要使用记录当我们考虑怎么逻辑地组织数据时,应该将一个人的所有信息项放在一起,即保持相关性。学号姓名语文成绩数
2、学成绩英语成绩.00001张三96948800003李四89707600004王五908778我们希望的结构学生一00001张三969488学生二00003李四897076学生三00004王五908778记录在C++中称为结构体结构体类型作用结构体类型允许程序员把一些分量聚合成一个整体,用一个变量表示。一个结构体的各个分量都有名字,把这些分量称为成员(member)。由于结构体的成员可以是各种类型的,程序员能创建适合于问题的数据聚合。结构体的使用定义一个新的结构体类型定义新类型的变量访问结构体变量第8章数据封装—结构体结构体的概
3、述结构体类型的定义结构体类型的变量结构体数组结构体作为函数的参数链表结构体类型的定义定义结构体类型中包括哪些分量格式:struct结构体类型名{字段声明;};如:structstudentT{charno[10];charname[10];intchinese;intmath;intenglish;};注意字段名可与程序中的变量名相同在不同的结构体中可以有相同的字段名结构体成员的类型可以是任意类型,当然也可以是结构体类型structdateT{intmonth;intday;intyear;};structstudentT{...dateT
4、birthday;};第8章数据封装—结构体结构体的概述结构体类型的定义结构体类型的变量结构体数组结构体作为函数的参数链表结构体类型的变量结构体变量的定义结构体类型的引用指向结构体的指针动态分配结构体的空间结构体变量的定义结构体变量的定义和普通的变量定义一样。如定义了结构体类型studentT,就可以定义结构体变量:studentTstudent1;一旦定义了一个结构体类型的变量,系统在分配内存时就会分配一块连续的空间,依次存放它的每一个分量。这块空间总的名字就是结构体变量的名字。内部还有各自的名字englishmathchinesenam
5、enostudent1结构体变量的初始化studentTstudent1={“00001”,“张三”,87,90,77};定义结构体类型的同时定义变量struct结构体类型名{字段声明;}结构体变量;struct{字段声明;}结构体变量;区别:前者可以继续用结构体类型名定义变量结构体类型的变量结构体变量的定义结构体类型的引用指向结构体的指针动态分配结构体的空间结构体变量的访问成员的表示:结构变量名.成员名如:student1.name如结构中还有结构,则一级一级用”.”分开,如如:student1.birthday.year对结构体类型变量
6、的引用一般为引用他的成员结构变量的赋值结构体是一个统称。每个结构体类型在使用前都要先定义自己有哪些分量。系统事先无法知道如何处理他。因此,结构体变量的赋值通常是通过对它的每一个成员的赋值而实现。如:输入student1的内容可用:cin>>student1.no>>student1.name>>student1.chinese>>student1.math>>student1.english>>student1.birthday.year>>student1.birthday.month>>student1.birthday.day;同类型
7、的结构变量之间可以相互赋值,如Student1=student2;将student2的成员对应赋给student1的成员结构变量的输出结构体变量的输出通常是通过输出它的每一个成员而实现。如:输出student1的内容可用:cout<8、变量结构体变量的定义结构体类型的引用指向结构体的指针动态分配结构体的空间指向记录的指针直接定义指针变量studentT*sp;也可以在定义结构体类型的同时定义指向结构体的指针st
8、变量结构体变量的定义结构体类型的引用指向结构体的指针动态分配结构体的空间指向记录的指针直接定义指针变量studentT*sp;也可以在定义结构体类型的同时定义指向结构体的指针st
此文档下载收益归作者所有