书签 分享 收藏 举报 版权申诉 / 60
上传文档赚钱

类型C语言程序设计第12章结构体和共用体课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4985039
  • 上传时间:2023-01-30
  • 格式:PPT
  • 页数:60
  • 大小:3.57MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《C语言程序设计第12章结构体和共用体课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    语言程序设计 12 结构 共用 课件
    资源描述:

    1、2023-1-302/602023-1-303/602023-1-304/602023-1-305/602023-1-306/602023-1-307/602023-1-308/602023-1-309/60分配内存不集中,寻址效率不高分配内存不集中,寻址效率不高 对数组赋初值时,易发生错位对数组赋初值时,易发生错位 结构显得零散,不易管理结构显得零散,不易管理2023-1-3010/602023-1-3011/60声明了一个结构体类型声明了一个结构体类型构成结构体的变量构成结构体的变量称为结构体的成员称为结构体的成员(Structure Member)结构体的名字结构体的名字称为结构体标称为

    2、结构体标签签(Structure Tag)2023-1-3012/60结构体模板结构体模板(Structure Template)Dont forget the semicolon!2023-1-3013/60(1 1)先定义结构体类型,再定义变量名)先定义结构体类型,再定义变量名(2 2)在定义类型的同时定义变量)在定义类型的同时定义变量(3 3)直接定义结构体变量(不指定结构体标签)直接定义结构体变量(不指定结构体标签)2023-1-3014/60关键字关键字typedef为一种为一种已存在的已存在的类型定义一个类型定义一个别名别名,并未定义新类型,并未定义新类型STUDENT与与stru

    3、ct student类型是类型是同义词同义词2023-1-3015/60等价于等价于等价于等价于2023-1-3016/60结构体定义结构体定义可以嵌套可以嵌套2023-1-3017/602023-1-3018/60按结构体的成员顺序逐按结构体的成员顺序逐一对相应成员进行赋值一对相应成员进行赋值格式符格式符%02d中中2d前面的前导符前面的前导符0表示输表示输出数据时,若左边有多余位,则补出数据时,若左边有多余位,则补02023-1-3019/60两个地址有何不同?两个地址有何不同?2023-1-3020/60结构体成员的地址与结构体成员的地址与该成员在结构体中所该成员在结构体中所处的位置及其

    4、所占内处的位置及其所占内存的字节数相关存的字节数相关结构体变量的地址结构体变量的地址&stu2是该变量所占是该变量所占内存空间的首地址内存空间的首地址2023-1-3021/60struct=?2023-1-3022/60事实上,所有数据类型在内存中都是从事实上,所有数据类型在内存中都是从地址开始存放的地址开始存放的且结构所占的实际空间一般是按照机器字长对齐的且结构所占的实际空间一般是按照机器字长对齐的不同的编译器、平台,对齐方式会有变化不同的编译器、平台,对齐方式会有变化结构体变量的成员的存储结构体变量的成员的存储是与机器相关的是与机器相关的具有特定数据类型的具有特定数据类型的也是与机器相关

    5、的也是与机器相关的所以一个结构体在内存中的存储格式也是与机器相关的所以一个结构体在内存中的存储格式也是与机器相关的2023-1-3023/602023-1-3024/60建立了数据库中的多条记录,每条对应一个学生信息建立了数据库中的多条记录,每条对应一个学生信息2023-1-3025/602023-1-3026/60ptstu1成员成员1成员成员2成员成员3成员成员4成成员员5等价于等价于2023-1-3027/60ptstu1成员成员1成员成员2成员成员3成员成员4成成员员52023-1-3028/60ptstu1成员成员1成员成员2成员成员3成员成员4成成员员52023-1-3029/60

    6、等价于等价于等价于等价于ptstu30stu0stu1stu2stu3stu4stu5.stu292023-1-3030/60ptstu30stu0stu1stu2stu3stu4stu5.stu292023-1-3031/602023-1-3032/60struct date int year;int month;int day;void func(struct date p)p.year=2000;p.month=5;p.day=22;2023-1-3033/60struct date int year;int month;int day;void func(struct date)yea

    7、r=2000;month=5;day=22;指针作函数形参指针作函数形参实参必须为地址值实参必须为地址值2023-1-3034/60struct date int year;int month;int day;func(struct date)year=2000;month=5;day=22;2023-1-3035/602023-1-3036/60 2023-1-3037/60 2023-1-3038/60 2023-1-3039/60 2023-1-3040/602023-1-3041/600 x0037b002023-1-3042/60sizeof(union number)取决于取决于的

    8、那个成员的那个成员变量变量0 x0037b00同一内存单元在每一瞬时只能存放其中一种类型的成员同一内存单元在每一瞬时只能存放其中一种类型的成员起作用的成员是起作用的成员是的成员,不能作为函数参数的成员,不能作为函数参数不能进行比较操作,只能对第一个成员初始化不能进行比较操作,只能对第一个成员初始化2023-1-3043/602023-1-3044/602023-1-3045/60描述的是一组整型值的集合描述的是一组整型值的集合用于当某些量仅由有限个数据值组成时用于当某些量仅由有限个数据值组成时 enum weeks SUN,MON,TUE,WED,THU,FRI,SAT;enum weeks

    9、today;enum response no,yes,none;enum response answer;today =TUE;answer=yes;enum response no=-1,yes=1,none=0;其值为其值为2 2其值为其值为1 12023-1-3046/60结构体声明时不能结构体声明时不能包含本结构体类型包含本结构体类型成员,成员,系统将无法系统将无法为这样的结构体类为这样的结构体类型分配内存型分配内存 可包含指向本结构体可包含指向本结构体类型的指针变量类型的指针变量2023-1-3047/60datanextheaddatanextdatanextdataNULL202

    10、3-1-3048/60datanextheaddatanextdatanextdataNULL两部分信息组两部分信息组成一个节点成一个节点2023-1-3049/60datanextheaddatanextdatanextdataNULL数据域:存储数据数据域:存储数据元素信息元素信息指针域:存储直接指针域:存储直接后继的节点信息后继的节点信息n个节点链接成一个链表(因为只包含一个指针域,故又个节点链接成一个链表(因为只包含一个指针域,故又称线性链表或单向链表)称线性链表或单向链表)2023-1-3050/60data=Anodedata=Bnodedata=Cnodehead2023-1-3

    11、051/60LL)headdatanext p(2)pr=ppr(3)pr-next=NULL2023-1-3052/60datanextp(2)pr=pheaddataprpr(3)pr-next=NULLnext2023-1-3053/60 datanextheaddatanext p2023-1-3054/60datanextdatanextdatanext pdatanext 2023-1-3055/60 headdata p2023-1-3056/60headdatanext pdatanextdatanextdata2023-1-3057/60datanextdatanext pdatanextdatanextdatapr2023-1-3058/60datanextdatanext pprdatanext2023-1-3059/60headdatanextdatanextdatapppp2023-1-3060/60Questions and answers

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:C语言程序设计第12章结构体和共用体课件.ppt
    链接地址:https://www.163wenku.com/p-4985039.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库