结构体与共用体-枚举

结构体与共用体-枚举

ID:46923001

大小:1.13 MB

页数:38页

时间:2019-11-30

结构体与共用体-枚举_第1页
结构体与共用体-枚举_第2页
结构体与共用体-枚举_第3页
结构体与共用体-枚举_第4页
结构体与共用体-枚举_第5页
资源描述:

《结构体与共用体-枚举》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章结构体与共用体2本章主要内容结构体类型与结构体变量结构体数组结构体变量与函数*共用体枚举类型typedef定义类型结构体变量与指针*35.1结构体定义、引用及赋值学号姓名性别年龄成绩地址10010LiJunM1785.5FuJianintnum;charname[20];charsex;intage;floatscore;charaddress[50];structstudent{intnum;charname[20];charsex;intage;floatscore;charaddress[50];

2、};(1)结构体定义structstudent{intnum;charname[20];charsex;intage;floatscore;charaddress[50];};结构体类型名结构体各成员定义结构体类型大括号外要加分号structstudentstu1,stu2;系统不为结构体类型的定义开辟内存单元,只当定义了结构体变量后才会为变量分配相应大小的内存单元。stu1和stu2在内存占几个字节?先声明结构体类型再定义结构体变量structstudent{intnum;charname[20];char

3、sex;intage;floatscore;charaddress[50];};structstudentstu1,stu2;声明结构体类型的同时定义结构体变量structstudent{intnum;charname[20];charsex;intage;floatscore;charaddress[50];}stu1,stu2;直接定义结构体变量struct{intnum;charname[20];charsex;intage;floatscore;charaddress[50];}stu1,stu2;这

4、种不带结构体类型名的定义,是无法重用的。说明:类型与变量名是不同的概念;对结构体的成员的使用与普通变量类似;结构体的成员也可以是另一个结构体;structstudent{intnum;charname[20];charsex;structdatebirthday;floatscore;charaddress[50];};成员名可以与程序中的其它变量同名。structdate{intyear;intmonth;intday;}birthday;(2)结构体变量的引用structstudent{intnum;ch

5、arname[20];charsex;intage;floatscore;charaddress[50];}stu1,stu2;stu1.num=10021;strcpy(stu1.name,"Xiaohua");stu1.age=18;stu1.score=85.5…结构体变量的引用:结构体变量名.成员名结构体变量的成员在引用时和其同类型的普通变量引用方法一致。structstudent{intnum;charname[20];charsex;structdate{intyear;intmonth;intd

6、ay;}birthday;floatscore;charaddress[50];}stu;…stu.birthday.year=2000;…结构体变量的成员又是结构体时,应一层层找到最低一级的成员。(3)结构体变量的初始化变量初始化具体形式:struct结构体类型名{类型说明符1成员名1;类型说明符2成员名2;…类型说明符3成员名3;}变量名列表={初始化数据};(3)结构体变量的初始化例5-1对结构体变量初始化。voidmain(){structstudent/*定义结构体*/{intnum;charnam

7、e[25];charsex;intage;floatscore;charaddr[35];}student2,student1={102,"hangping",'M',18,85.5,"shanghai"};student2=student1;printf("Number=%dName=%s",student2.num,student2.names);printf("Sex=%cScore=%f,student2.sex",student.scores);}135.2结构体数组structst

8、udent{intnum;charname[20];charsex;intage;floatscore;charaddress[50];}stu[3];structstudent{intnum;charname[20];charsex;intage;floatscore;charaddress[50];}stu;a.结构体数组定义numnamesexagescoreaddress1001LinNin

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

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

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