1 / 41
文档名称:

第07章 结构体与其他构造数据类型.ppt

格式:ppt   大小:425KB   页数:41页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第07章 结构体与其他构造数据类型.ppt

上传人:allap 2019/7/7 文件大小:425 KB

下载得到文件列表

第07章 结构体与其他构造数据类型.ppt

相关文档

文档介绍

文档介绍:第7章结构体与其他构造数据类型《C语言程序设计》:把不同类型的数据组合成一个整体-------自定义数据类型结构体类型声明:一般形式为:struct结构体名{类型标识符成员名;类型标识符成员名;…………….};成员类型可以是基本型或构造型struct是关键字,不能省略合法标识符例structstudent{intinum;ame[20];charcsex;intiage;floatfscore;charcaddr[30];};cnameinumcsexiagefscorecaddr2字节2字节20字节1字节4字节30字节……..结构体类型声明描述结构的组织形式,不分配内存例structstudent{intinum;ame[20];charcsex;intiage;floatfscore;charcaddr[30];};structstudentstu1,stu2;2结构体变量的定义先声明结构体类型,再定义结构体变量一般形式:struct结构体名{类型标识符成员名;类型标识符成员名;…………….};struct结构体名变量名表列;例#defineSTUDENTstructstudentSTUDENT{intinum;ame[20];charcsex;intiage;floatfscore;charcaddr[30];};STUDENTstu1,stu2;声明结构体类型的同时定义结构体变量一般形式:struct结构体名{类型标识符成员名;类型标识符成员名;…………….}变量名表列;例structstudent{intinum;ame[20];charcsex;intiage;floatfscore;charcaddr[30];}stu1,stu2;直接定义结构体变量一般形式:struct{类型标识符成员名;类型标识符成员名;…………….}变量名表列;例struct{intinum;ame[20];charcsex;intiage;floatfscore;charcaddr[30];}stu1,stu2;用无名结构体直接定义变量只能一次说明结构体声明与结构体变量定义概念不同类型:不分配内存;变量:分配内存类型:不能赋值、存取、运算;变量:可以结构体可嵌套结构体成员名与程序中变量名可相同,不会混淆结构体类型变量的作用域与生存期与变量的完全相同例structdate{intimonth;intiday;intiyear;};structstudent{intinum;ame[20];structdatebirthday;}stu;amebirthdayimonthidayiyear例structstudent{intinum;ame[20];structdate{intimonth;intiday;intiyear;}birthday;}stu;amebirthdayimonthidayiyear3结构体变量的引用引用规则结构体变量不能整体引用,只能引用变量成员可以将一个结构体变量赋值给另一个结构体变量结构体嵌套时逐级引用成员(分量)运算符优先级:1结合性:从左向右引用方式:{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu1,stu2;=10;=;+=;++;例structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu1,stu2;printf(“%d,%s,%c,%d,%f,%s\n”,stu1);()stu1={101,“WanLin”,‘M’,19,,“DaLian”};()例structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu1,stu2;stu2=stu1;()例structstudent{intnum;charname[20];structdate{intmonth;intday;intyear;}birthday;}stu1,stu2;=12;例structstudent{intnum;charname[20