- 2
- 0
- 约4.48千字
- 约 16页
- 2017-04-23 发布于河南
- 举报
C语言程序设计实用教程陈方第7章
7.1 结构体
结构体和共用体与数组一样都属于构造类型。数组的特点是一个数组变量中的所有元素必须是同一种数据类型。显然,用数组处理大量同类型数据是非常方便的。但是在实际生活中,有许多密切相关的数据需要统一考虑和处理,而它们的数据类型是不同的,如一个学生的档案信息,包括学号、姓名、性别、年龄、学习成绩……,这些数据的类型有整型、字符型、实型等。为了处理由这些不同类型的数据组合成的有机整体,我们引入了一个新的数据类型,称为结构体。; 2.结构体类型变量的定义 结构体类型定义后,应当定义结构体类型的变量,简称结构体变量。结构体变量的定义方式有三种。 ;7.1.2 结构体变量的引用与初始化
1.结构体变量的引用 由于结构体变量中包含若干不同数据类型的成员项,为了引用变量中的某一个成员,必须指明该成员属于哪一个变量。对结构体变量的引用是通过对其成员的引用来实现的。
引用结构体变量中成员的方式为:
结构体变量名.成员名
“· ”是成员运算符,它在所有的运算符中优先级最高。;7.1.3 数组
数组的元素也可以是结构体类型的,这样就构成了结构体数组。结构体数组的每一个元素都是具有相同结构体类型的结构体变量。在实际应用中,经常用结构体数组来表示具有相同数据结构的一个群体。如一个班的学生档案,一个单位的职工的工资表等。
1.结构体数组的定义 结构体数组的定义方法与结构体变量的定义方法相似。例如:
struct student
{ long num;
char name[20];
char sex;
int age;
float score;
} stu[40];
定义了一个结构体数组stu,它包含40个元素stu[0]~stu[39],每个数组元素都是struct student类型的结构体形式。; 2.结构体数组的初始化 结构体数组的初始化与数组的初始化一样。
3.结构体数组元素的引用 结构体数组的每个元素相当于一个结构体变量,因此引用结构体数组元素的成员与引用结构体类型变量的成员的方式相似。
引用一个结构体数组元素的成员变量的格式为:
结构体数组名[下标].成员名;7.1.4 结构体???针
1.结构体指针变量
(1)结构体指针变量的定义
struct 结构体名 *结构体指针变量名;
例如:
struct student stu1, *ptr;
这里定义了一个struct student 类型的指针变量ptr以及一个结构体变量stu1,其中struct student为已经定义过的结构体类型。
(2)结构体指针变量的初始化
结构体指针变量的初始化就是把结构体变量的首地址赋给它,
(3)结构体指针变量的使用
利用结构体指针变量可以方便地引用结构体变量成员。其引用的一般形式为:
(*结构体指针变量名).成员名
或: 结构体指针变量→成员名 ; 2.结构体数组指针
一个结构体指针变量不仅可以指向结构体变量,也可以指向结构体数组,这种指向结构体数组的指针就是结构体数组指针。
(1)结构体数组指针的定义
结构体数组指针的定义方法与结构体变量指针的定义方法类似,只要把结构体数组的首地址赋给该指针变量即可。
(2)结构体数组指针的使用
设ptr为指向结构体数组的指针变量,则ptr指向该结构体数组的第0号元素,ptr+1指向第1号元素,ptr+i则指向第i号元素。这与普通数组的情况是一致的。; (2)结构体变量作函数参数
用结构体变量作函数参数,取的是“值传递”的方式,将结构体变量所占的内存单元的内容全部顺序传递给形参。形参也必须是同类型的结构体变量。在函数调用期间形参也要占用内存单元。这种传递方式在空间和时间上开销较大,严重地降低了程序的效率,因此这种方法较少使用。
(3)用结构体指针变量作函数参数
用结构体指针变量作函数参数进行传送,这时由实参传向形参的只是地址,从而减少了时间和空间的开销,使程序效率提高。;7.2 共用体
共用体(或称联合),也属于构造类型。共用体类型的定义和共用体类型变量的定义方式与结构体定义方式相似。但它们的含义不同,结构体变量中的成员占据独立的内存空间,而共用体变量中的所有成员共用同一段内存空间,在同一时刻,共用体只有一个成员变量是可用的,
您可能关注的文档
- 2017全国高考高三地理二轮复习 五大应用 因地制宜课件 专题四 区际联系与区域协调发展.ppt
- 2016-2017学年高中(湘教版)地理必修2课件:第3章 区域产业活动3.1.ppt
- 七年级科学下册(浙教版)作业课件B本:第一章 第3节 动物的生长时期第1课时 动物的生长时期.ppt
- 2017年高一地理(人教版)必修1精品课件:第5章 自然地理环境的整体性与差异性5.2.ppt
- 高一历史课件:必修二 专题四 物质生活和社会习俗的变迁B.ppt
- 第九章 第一节重要的烃 石油、煤、天然气的综合利用.ppt
- 七年级科学下册(浙教版)作业课件B本:第三章 第1节机械运动第1课时 参照物.ppt
- 高考化学课件:第1单元第1讲 物质的组成、性质和分类.ppt
- 资源利用 环境保护.ppt
- 验证动量守恒定律之硬币碰撞弹射器.ppt
最近下载
- 高频精选:古茗加盟商面试题及答案.doc VIP
- 2025年《金属加工实训》课程标准.docx VIP
- 开封求实学校2018小升初试卷真题(秋考)A卷.pdf VIP
- 小学科学新教科版三年级下册全册教案(2026春).pdf
- 2025(北师大版)数学六年级下册开学第一课.pptx
- 民航机上急救手册ppt全套教学课件.pptx
- 无机及分析化学教学课件作者十一五电子教案教学课件作者含习题解答叶芬霞第4章-新(445KB).ppt VIP
- 体例格式12:工学一体化课程《小型网络安装与调试》任务1教学单元3教学单元活动方案.docx VIP
- 16G101-1 平法图集正版扫描版.pptx VIP
- 道路沥青拌合站建设项目安全预评价报告.doc VIP
原创力文档

文档评论(0)