- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序设计(二) 吕俊白 结构与链表 主要内容: 结构数据类型的定义和数据对象声明 结构成员的访问 结构与指针 链表 重点: 结构类型、结构与指针的关系、用结构实现链表 一、结构 1.什么是结构 结构:由相同或不同数据类型的数据组成的集合体。 结构必须用结构类型来描述,结构类型是用户自定义的数据类型; 结构类型由一组相同或不同类型的数据对象组成,这些数据对象称为结构的成员或结构分量,每一个成员必须有确定的名字和类型。 2. 定义结构类型 结构类型的定义语法如下: struct 结构类型名 { 数据类型说明符1 成员名1; 数据类型说明符2 成员名2; … 数据类型说明符n 成员名n; }; //分号是必需的 例如:学生数据聚合了:学号、姓名、性别、籍贯、出生年月……等数据项目,用来描述学生的基本情况,其中出生年月这一项目又由年、月、日三个项目聚合而成。 定义一个描述学生数据的结构类型。 struct BIRTHDAY //描述出生年月 { int year; int month; int day; }; struct STUDENT //描述学生的基本信息 { int num; char name[9]; char sex; BIRTHDAY birthday; char NativePlace[30]; }; 注意: (1) 若结构中又包含其他结构成员,则称为结构的嵌套。 (2) 结构成员不能是自身的结构变量。 例如: struct List { char name[20]; List m; // 错!不应含有自身的结构变量 }; 3. 结构类型变量的定义 定义结构类型变量的语法如下: 结构类型名 结构变量名表; 注意: ? 结构类型名必须是已定义的; 例如: STUDENT stud1; 该语句定义了一个STUDENT类型的结构变量stud1; 说明: (1)?声明一个结构并不分配内存,内存分配发生在定义结构变量时。 (2)结构变量占内存大小可用sizeof操作符求出:sizeof(类型名或变量名) (3)定义结构变量的同时可以直接设置初值。 (方法与初始化数组相似) 例如: STUDENT stud1={096011,Frank,M, 1990,6,23,China}; STUDENT stud1={096011,Frank,M,{1990,6,23},China}; 4.?访问结构成员 一旦通过定义相应结构变量,分配了空间之后,就可以访问结构中的成员; 访问结构中的成员通过使用点操作符“.”来实现。 结构成员的引用形式为: 结构变量名 . 成员名 说明:左操作数为结构类型变量,右操作数为结构中的成员。 例如:定义一结构类型用于描述学生数据,后定义一结构变量并对其进行初始化,然后输出该生的信息。struct_visit.cpp #include iostream using namespace std; struct BIRTHDAY //描述出生年月 { int year; int month; int day; }; struct STUDENT //描述学生的基本信息 { int num; char name[9]; char sex; BIRTHDAY birthday; char NativePlace[30]; }; 例:(续) int main() { STUDENT stud1={096011,Frank,M,1990,6,23,China}; coutstud1.numendl; coutstud1.nameendl; coutstud1.sexendl; coutstud1.birthday.yearendl; coutstud1.birthday.monthendl; coutstud1.birthday.dayendl; coutstud1.NativePlaceendl; return 1; } 注意:引用嵌套结构的成员时,要使用多个点操作符,逐级表示到最低一级成员。 二、 结构与指针 在定义了结构类型之后,可以定义一个结构类型的变量;同样,定义了结构类型之后,也可以定义一个结构类型的指针变量。 例如:假设已定义结构类型Employee ,则 Employee *Empptr; Empptr就是一个结构类型的指针变量,它指向的对象是结构。 定义结构类型的指针变量与定义其它类型的指针变量其方法完全相同。 结构类
您可能关注的文档
- 第六篇 系统总线.ppt
- 第四讲 托盘存取系统.pdf
- 第2章 win7自带工具调整硬盘分区容量.doc
- 备份和恢复简介.ppt
- 第二讲:指令系统.ppt
- 第五篇_IO系统.ppt
- 电子测量第7篇 数据域测量.ppt
- 矩阵与其应用.ppt
- 第三篇 语言翻译问题.ppt
- 芯联半导体2013年电源IC方案和应用指导.pdf
- NIST 2025 快速微生物检测方法研讨会报告(英).pdf
- IMF-选举的重要性:资本流动与政治周期(英)-2025.11.pdf
- AfricaNenda 2024年年度报告(英).pdf
- PitchBook-2025年第三季度美国风险投资二级市场观察(英)-2025.pdf
- IMF-莫桑比克共和国:使用核心QPM对MPC过程进行技术援助报告演练(英)-2025.pdf
- (最新)25年统编版三年级语文上册语文园地三【活动探究版】.pptx
- 高考语文阅读理解《林海雪原(节选)》《革命英雄传奇小说的艺术价值》含答案解析.docx
- 高考政治一轮复习 选择性必修三《逻辑与法律》 第03课 领会科学思维(好题过关)(解析版).docx
- 高考政治一轮复习 选择性必修三《逻辑与法律》 第03课 领会科学思维(好题过关)(原卷版).docx
- IMF-稳定支出规则在促进宏观财政稳定中的作用:来自波兰的模拟证据(英)-2025.11.pdf
最近下载
- 《高等数学基础》课件——第四章 导数的应用(含课程思政元素).pptx VIP
- 职域行销BBC模式开拓流程-企业客户营销技巧策略-人寿保险营销实战-培训课件.pptx VIP
- 第三单元第三课《气韵生动》课件 人教版(2024)初中美术八年级上册.pptx VIP
- ek-220说明书中文版.pdf VIP
- 2025年天津市专业技术人员公需考试试题-为中国式现代化提供强大动力和制度保障——党的二十届三中全会暨《中共中央关于进一步全面深化改革、推进中国式现代化的决定》总体解读.docx VIP
- 16949全套程序文件及表单(全套质量手册、程序文件、表单).doc
- DB34_T 5197-2025 水利信息化项目验收规程.docx
- 2026年日历表(A4纸一页打印、可编辑).pdf VIP
- 医美整形顾客管理存量增长运营方式.pptx VIP
- POA课程市公开课一等奖省赛课微课金奖PPT课件.pptx VIP
原创力文档


文档评论(0)