- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VC++程序设计 -第七章结构体、共同体和枚举类型.pdf
第七章结构体、共 同体和枚举类型
C++语言的导出数据类型除了前一章介绍的数组之外,还有结构体、共同
体、枚举类型和类等。本章介绍结构体、共同体、枚举类型的定义方法及其应用。
7.1 结构体的定义及应用
数组是同一类型的数据的集合,在实际应用中, 还常要将不同类型的数据作
为一个整体来处理。如要描述一个学生的数据可以包括:学号、学生的姓名、性
别、年龄、成绩等数据项,这些数据项属于不同的数据类型。姓名是字符串类型,
而成绩是实型等。把由不同类型的数据作为一个整体的数据类型来处理时,这种
类型的数据称为结构体。
7.1.1 结构体类型的说明
结构体类型是一种导出的数据类型,编译程序并不为任何数据类型分配存储
空间,只有定义了结构类型的变量时,系统才为这种变量分配存储空间。要定义
结构体变量,必须先说明结构体类型。如描述上面的学生基本情况的结构体可以
是::
struct student {
int id; //学号
char name[20]; //姓名
char sex; //性别
int age; //年龄
float eng, phy, math,poli; //分别为英语、物理、数学和政治的成绩
};
定义一个结构体类型的一般格式为:
struct 结构体类型名 {
类型名 变量1;
《类型名 变量2; 》
};
其中结构体类型名由标识符组成,在花括号中依次列举变量的类型和变量名,每
一个变量的类型可以是基本类型或者是导出类型。把花括号中所定义的变量称为
结构体的成员或分量。如前面定义的结构体 student,它有八个成员,每一个成
员的含义,已在注解中作了说明。
注意,在定义结构体的成员时,不能指定成员的存储类型的 auto,register ,
extern,这是由于系统不为结构体类型分配任何存储空间,当然就不能指定其成
员为以上三种存储类型之一。但可以指定成员的存储类型为 static 。如:
struct test{
auto int i,j; //不正确,不能指定为自动存储类型
register int x; //不正确,不能指定为寄存器存储类型
extern int f; //不正确,不能指定为外部存储类型
static int y; //正确,可指定为静态存储类型
};
当结构体成员定义为静态存储类型时,其作用与用途在后面作说明。
在一个程序中,一旦定义了一个结构体类型,就增加了一种新的数据类型,
也就可以用这种结构类型说明变量。
7.1.2 定义结构体类型的变量
结构类型的变量也与其它类型的变量一样,应该定义在前,使用在后。定义
结构体类型,只是规定了结构体中成员的结构框架或存储格式,并不为结构体类
型分配存储空间,在定义结构体变量时,编译程序按照结构体中所定义的存储格
式为结构体变量分配存储空间。定义结构体类型变量的一般格式为:
《存储类型》 结构体类型名 变量名 1 《,变量名 2 ,》;
或者
《存储类型》 struct 结构体类型名 变量名 1 《,变量名 2 ,》;
有 struct 与省略 struct 的作用是一样的。在本书中均采用前一种格式。如前面定
义的结构体类型 student,可定义 student 类型的变量:
student s1, s2[10];
这里定义 s1 为结构体 student 类型的变量,s2 定义为 student 类型的数组,编译
程序要为这二个变量分配存储空间。为 s1 分配的内存空间如图 7.1 所示。
id 4 个字节
name 20 个字节
sex 1 个字节
age 4 个字节
eng 8 个字节
phy 8 个字节
您可能关注的文档
- 5第二章(场地、地基和基础3,4).ppt
- 5第五章 非等精度测量.ppt
- 5第五章 人力资源管理.doc
- 5第五章 明渠恒定均匀流.pdf
- 5第五章 表格处理.ppt
- 5第六章作业.ppt
- 6.第三章-胶体溶液和表面现象.ppt
- 6.第六章 排队论.pdf
- 6第六章 教学系统软件安装和使用.pdf
- 6第六章 非合作寡占定价.ppt
- 员工年度计划.docx
- 员工第一季度工作总结报告.docx
- 国防军工行业动态:东部战区举行海峡雷霆演练,关注结构性增长新机会-250405-中信建投-24页.pdf
- 行业轮动月报:食饮农牧等相对占优—多策略行业轮动模型月度跟踪(2025年4月)+-250410-中信建投-21页.pdf
- 2023咸阳市公务员行测(达标题)附答案详解.docx
- 2023大兴安岭地区公务员行测附参考答案详解(综合题).docx
- 2023周口市公务员行测含答案详解【名师推荐】.docx
- 2023年度公务员(国考)试题预测试卷带答案详解(精练).docx
- 2023年三明市公务员行测真题及参考答案详解(考试直接用).docx
- 2023年佛山市公务员行测含完整答案详解(易错题).docx
最近下载
- 培智学校生命教育案例(2).pptx
- (正式版)D-L∕T 5495-2015 35kV~110kV户内变电站设计规程.docx VIP
- SJG 21-2025《建筑废弃物减排技术标准》.pdf
- 工程问题解题方法.pdf VIP
- 山东省济南市历下区2023-2024学年八年级下学期期中数学试题(含答案).doc.docx VIP
- 反恐防暴安全教育PPT课件.pptx VIP
- 2024年第二次广东省普通高中生物学业水平合格性考试含答案.docx VIP
- 公安院校公安专业本专科招生政治考察表、面试表、患病经历申报表、体检表、体能测评表.doc VIP
- 碳中和目标下传统煤化工的绿色发展探讨.docx VIP
- 2024年度中国物流科技市场数据报告.pptx
文档评论(0)