- 1、本文档共85页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch11-结构体和共用体
第十一章结构体与共用体; 考虑这样一类数据:一个数据项由多个子数据项组成,而且每个子数据项的类型可能不一样。
比如: 在人事档案管理中,每个人的自然情况表可能包含:名字(字符串型)、年令(整型)、出生时间(三个整型)、性别(枚举)等等。; 再如,研究人造卫星,每个人造卫星的信息可能包括:名字(字符型)、发射时间(三个整数)、重量(实型)、直径(实型)、轨道半径(实型)、与赤道夹角(实型)等等。;结构体;<结构体类型说明符> → <结构体类型引用>
▌<结构体类型定义>
<结构体类型引用> → struct <结构体标签>
<结构体类型定义> → struct 〖<结构体标签>〗
{ <字段列表> }
<结构体标签> → <标识符>
<字段列表> → <成员声明> ▌<字段列表><成员声明>
<成员声明> → <类型声明符><成员声明符列表> ;
<成员声明符列表> → <成员声明符>
▌<成员声明符列表> ,<成员声明符>
<成员声明符> → <简单成员> ▌<位字段>
<简单成员> → <声明符>
<位字段> → 〖<声明符>〗:<宽度>
<宽度> → <常量表达式>;按语法,不考虑位字段,“结构体类型定义”呈如下两种形式:; 例11-1 一个人的自然情况表 卫星数据类型;year:;name:;name:;结构体类型引用
在struct后跟以结构体标签,称为“结构体类型引用”。在例11-1的结构体类型定义的意义下:
struct date
struct preson
struct mansatellite
都是结构体类型引用,使用它们将分别标记相应结构体定义。
;结构体类型说明符:
结构体类型定义和结构体类型引用统称“结构体类型说明符”。使用结构体类型说明符可以
定义结构体类型的类型名,
还可以声明结构体类型变量。
;结构体类型名;例11-2 定义结构体类型名;结构体变量; 例11-3 结构体变量声明;指向结构体变量的指针;struct preson *pointer_preson ;
struct date {
int year,month,day ;
} *dateofpointer ;
struct {
char author[10] ;
datetype publish_date ;
int page_number ;
} *p ;
mansatellitetype *p_east;结构体变量的成分;直接成员选择
直接成员选择表达式针对一般的结构体变量。
形式是:
r . w
r 是后缀表达式,最终计算出一个结构体变量;
w是 r 所属结构体类型中的一个成员名字
下述成员选择表达式是合法的:
zhang.name
programming_pascal.author;间接成员选择
间接成员选择表达式针对指向结构体变量的指针变量
形式是
p-w
p 是后缀表达式,最终计算出一个指向结构体变量的指针变量;
w 是p所指向结构体变量所属类型中的一个成员名字
下述成员选择表达式是合法的:
pointer_preson - name
p_east - weight
p_east - lounchdate;例11-5 设计表示复数的结构体类型, 给出复数加法和乘法函数;/* 复数加法 */
complex_type complex_add(complex_type x, complex_type y){
complex_type add;
add.real_part=x.real_part+y.rea
您可能关注的文档
- 9-10月 华为项目管理工具和模板运用.doc
- 8第八讲 查询和视图.ppt
- 9.销售和收款循环审计案例.doc
- 93年第3季侦测弱点之说明和修补方式.doc
- 97-2艺术时尚II期中考艺文网站推荐和交流成果.doc
- 9、第九章 质量目标、保证体系与措施_secret.doc
- 9第九章 二战后美国经济(1945-1960).ppt
- 9第九章 货币市场和资本市场.ppt
- @实验九--Web服务器安装配置.doc
- ==第六章 列车技术质量管理(讲义)20100604.ppt
- 中国国家标准 GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- 《GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计》.pdf
- 中国国家标准 GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- 《GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置》.pdf
- 中国国家标准 GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- GB/T 17889.4-2024梯子 第4部分:铰链梯.pdf
- 《GB/T 17889.4-2024梯子 第4部分:铰链梯》.pdf
最近下载
- 百日咳试题附有答案.docx VIP
- 2024年广东省深圳市光明区人大常委会办公室招聘一般类岗位专干12人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 高中语文任务驱动型材料作文:枯燥与热闹审题指导(含解析).docx VIP
- 某镇卫生院污水设计方案.pdf VIP
- 2024年广东深圳市光明区人大常委会办公室招聘一般类岗位专干3人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 中考数学经验交流会发言稿.pdf
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【高频考点汇总500题】模拟卷及参考答案详解.docx VIP
- 《溜冰圆舞曲和雷鸣电闪波尔卡》精品课件2023.pptx
- 水利项目安全评价报告.docx
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
文档评论(0)