讲义结构体与共用体

讲义结构体与共用体

ID:9098096

大小:47.50 KB

页数:5页

时间:2018-04-17

讲义结构体与共用体_第1页
讲义结构体与共用体_第2页
讲义结构体与共用体_第3页
讲义结构体与共用体_第4页
讲义结构体与共用体_第5页
资源描述:

《讲义结构体与共用体》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、教学目的:介绍结构体、共用体的使用,掌握利用结构体、共用体编程。学习要求:1.熟练掌握结构体类型的定义2.熟练掌握结构体变量的定义和使用3.掌握结构体数组主要外语词汇:Structure、Union第9章结构体与共用体9.1结构体的说明和定义一、定义结构体类型:struct[结构体名]{类型名1成员名1;……类型名n成员名n;};1、一个结构体类型有其专用的标志,它由两个单词组成:第一个单词为关键字struct,第二个单词由用户指定,这二者联合起来组成一个类型名。2、系统没有预先定义结构体类型,用户需在程序中自己定义。

2、3、定义一个结构体类型只是表示这个类型的结构,这只是定义类型而不是定义变量,系统对之也不分配实际内存单元,它只反映了一种数据属性。“struct[结构体标识名]”的作用相当于“int”的作用。4、定义结构体类型时允许嵌套(最多15层)。5、结构体类型的定义有局部和全局之分。二、定义结构体类型的变量:1、先声明结构体类型再定义变量名:例:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];};structstudentstude

3、nt1,student2;2、在声明结构体类型的同时定义变量:例:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}student1,student2;3、直接定义结构体类型变量:例:struct{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}student1,student2;4、在编译时,系统对结构体变量分配实际内存单元。5、结构体成员变量也可以

4、是一个结构体变量。6、结构体成员名可以与程序中的其它变量名相同。例:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}student1,student2;intnum,age;9.2结构体成员的引用与结构体变量的初始化一、结构体变量的引用:1、引用结构体变量中的一个成员:结构体变量名.成员名.称为成员运算符,优先级最高。2、区分:(1)student1.num:结构体变量student1中的num成员。(2)num:简单变

5、量num。3、内嵌结构体成员的引用:必须逐层使用成员名定位。例:student1.birthday.month4、对结构体变量中的每个成员,都可以象普通变量一样,对它进行同类变量所允许的任何操作。二、结构体变量的初始化:1、所赋初值按顺序放在一对花括号中。2、不允许跳过前面的成员给后面的成员赋初值。例如:structstudent{charname[20];charsex;floatsc[4];}stud={“LiMing”,‘M’,88,76,85.5,90};3、在程序执行时利用赋值语句赋值:例:structstu

6、dent{charname[20];charsex;floatsc[4];}std;strcpy(std.name,“LiMing”);std.sex=‘M’;std.sc[0]=66;std.sc[1]=77;std.sc[2]=88;std.sc[3]=99;4、如果一个结构体类型内又嵌套了另一个结构体类型时,则初始化时仍然是对各个基本类型的成员赋初值。5、两个相同类型的结构体变量之间可以互相整体赋值。但数组之间不允许整体赋值。例:#includevoidmain(){structstudent{

7、charname[20];charsex;floatsc[4];}std1={“LiMing”,‘M’,88,76,85.5,90},std2;std2=std1;正确…}例1:9.3结构体数组结构体数组:数组中每一个元素都是一个结构体变量,数组各元素在内存中连续存放(按行存放)。一、定义结构体数组:1、先声明结构体类型再定义结构体数组:例:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];};structstudentst

8、u[3];2、在声明结构体类型同时定义结构体数组:例:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu[3];3、直接定义结构体数组而不声明类型名:例:struct{intnum;charname[20];charsex;in

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。