版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021-12-252/602021-12-253/602021-12-254/602021-12-255/602021-12-256/602021-12-257/602021-12-258/602021-12-259/60分配内存不集中,寻址效率不高分配内存不集中,寻址效率不高 对数组赋初值时,易发生错位对数组赋初值时,易发生错位 结构显得零散,不易管理结构显得零散,不易管理2021-12-2510/602021-12-2511/60声明了一个结构体类型声明了一个结构体类型构成结构体的变量构成结构体的变量称为结构体的成员称为结构体的成员(Structure Member)结构体的名字结构体的
2、名字称为结构体标称为结构体标签签(Structure Tag)2021-12-2512/60结构体模板结构体模板(Structure Template)Dont forget the semicolon!2021-12-2513/60(1 1先定义结构体类型,再定义变量名先定义结构体类型,再定义变量名(2 2在定义类型的同时定义变量在定义类型的同时定义变量(3 3直接定义结构体变量不指定结构体标签)直接定义结构体变量不指定结构体标签)2021-12-2514/60关键字关键字typedef为一种为一种已存在的类型定义一个已存在的类型定义一个别名,并未定义新类型别名,并未定义新类型STUDENT
3、与与struct student类型是同义词类型是同义词2021-12-2515/60等价于等价于等价于等价于2021-12-2516/60结构体定义结构体定义可以嵌套可以嵌套2021-12-2517/602021-12-2518/60按结构体的成员顺序逐按结构体的成员顺序逐一对相应成员进行赋值一对相应成员进行赋值格式符格式符%02d中中2d前面的前导符前面的前导符0表示输表示输出数据时,若左边有多余位,则补出数据时,若左边有多余位,则补02021-12-2519/60两个地址有何不同?两个地址有何不同?2021-12-2520/60结构体成员的地址与结构体成员的地址与该成员在结构体中所该成员
4、在结构体中所处的位置及其所占内处的位置及其所占内存的字节数相关存的字节数相关结构体变量的地址结构体变量的地址&stu2是该变量所占是该变量所占内存空间的首地址内存空间的首地址2021-12-2521/602021-12-2522/60事实上,所有数据类型在内存中都是从偶数地址开始存放的事实上,所有数据类型在内存中都是从偶数地址开始存放的且结构所占的实际空间一般是按照机器字长对齐的且结构所占的实际空间一般是按照机器字长对齐的不同的编译器、平台,对齐方式会有变化不同的编译器、平台,对齐方式会有变化结构体变量的成员的存储对齐规则是与机器相关的结构体变量的成员的存储对齐规则是与机器相关的具有特
5、定数据类型的数据项大小也是与机器相关的具有特定数据类型的数据项大小也是与机器相关的所以一个结构体在内存中的存储格式也是与机器相关的所以一个结构体在内存中的存储格式也是与机器相关的12个字节个字节2021-12-2523/602021-12-2524/60建立了数据库中的多条记录,每条对应一个学生信息建立了数据库中的多条记录,每条对应一个学生信息2021-12-2525/602021-12-2526/60ptstu1成员成员1成员成员2成员成员3成员成员4成成员员5等价于等价于2021-12-2527/60ptstu1成员成员1成员成员2成员成员3成员成员4成成员员52021-12-2528/6
6、0ptstu1成员成员1成员成员2成员成员3成员成员4成成员员52021-12-2529/60等价于等价于等价于等价于ptstu30stu0stu1stu2stu3stu4stu5.stu292021-12-2530/60ptstu30stu0stu1stu2stu3stu4stu5.stu292021-12-2531/602021-12-2532/60struct date int year; int month; int day;void func(struct date p) p.year = 2000; p.month = 5; p.day = 22;2021-12-2533/60st
7、ruct date int year; int month; int day;void func(struct date *p) p-year = 2000; p-month = 5; p-day = 22;指针作函数形参指针作函数形参实参必须为地址值实参必须为地址值2021-12-2534/60struct date int year; int month; int day;struct date func(struct date p) p.year = 2000; p.month = 5; p.day = 22; return p;2021-12-2535/602021-12-2536/6
8、02021-12-2537/602021-12-2538/602021-12-2539/602021-12-2540/602021-12-2541/600 x0037b008个字节个字节4个字节个字节2021-12-2542/600 x0037b00同一内存单元在每一瞬时只能存放其中一种类型的成员同一内存单元在每一瞬时只能存放其中一种类型的成员起作用的成员是最后一次存放的成员,不能作为函数参数起作用的成员是最后一次存放的成员,不能作为函数参数不能进行比较操作,只能对第一个成员初始化不能进行比较操作,只能对第一个成员初始化4个字节个字节2021-12-2543/602021-12-2544/60
9、2021-12-2545/60 today = TUE; answer = yes; enum response no = -1, yes = 1, none = 0; 其值为其值为2 2其值为其值为1 12021-12-2546/60 struct temp *pt;结构体声明时不能结构体声明时不能包含本结构体类型包含本结构体类型成员,系统将无法成员,系统将无法为这样的结构体类为这样的结构体类型分配内存型分配内存 可包含指向本结构体可包含指向本结构体类型的指针变量类型的指针变量2021-12-2547/60datanextheaddatanextdatanextdataNULL2021-12
10、-2548/60datanextheaddatanextdatanextdataNULL两部分信息组两部分信息组成一个节点成一个节点2021-12-2549/60datanextheaddatanextdatanextdataNULL数据域:存储数据数据域:存储数据元素信息元素信息指针域:存储直接指针域:存储直接后继的节点信息后继的节点信息n个节点链接成一个链表因为只包含一个指针域,故又个节点链接成一个链表因为只包含一个指针域,故又称线性链表或单向链表)称线性链表或单向链表)2021-12-2550/60data = Anodedata = Bnodedata = Cnodehead2021-12-2551/60headdatanext p(2) pr = ppr(3) pr-next = NULL2021-12-2552/60datanextp(2) pr = pheaddataprpr(3) pr-next = NULLnext2021-12-2553/60datanextheaddatanext p2021-12-2554/60datanextdatanextdatanext pdatanext2021-12-2555/60headdata p2021-12-2556/60headdatanext pdatan
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民航内部安全保卫制度
- 河西幼儿园内部管理制度
- 海尔内部会计管理制度
- 海底捞内部考核制度
- 火锅店内部员工管理制度
- 煤矿内部安全检查制度
- 煤矿技术科内部分配制度
- 环保局内部沟通制度
- 理发店内部规章制度模板
- 监理内部约谈制度
- GB/T 28733-2012固体生物质燃料全水分测定方法
- FZ/T 08001-2021羊毛絮片服装
- PSP问题分析与解决能力训练课件
- 大学生就业权益与保护
- 住房公积金缴存基数和缴存比例确认书
- 期末一年级数学老师家长会ppt
- GB 38755-2019 电力系统安全稳定导则
- 现浇箱梁混凝土浇筑施工
- 中职《机械基础》全套课件(完整版)
- 秋季学期-固态电子论--第三章
- 水泥土配合比
评论
0/150
提交评论