- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 结构体 1 结构体的定义与使用 2 typedef:给类型取个别名 3 指向结构体的指针 1 结构体的定义与使用 1.1 结构体的含义 1.2结构体的 定义 1.3 结构体的使用 1.4 结构体的嵌套定义 1.5 结构体变量作为函数参数 C语言仅仅提供基本的数据类型,这对表示现实生活中的对象非常不方便。因此,提供结构体方法,允许用户自定义自己需要的类型。 结构体是C语言中一种新的构造数据类型,它能够把有内在联系的不同类型的数据统一成一个整体,使它们相互关联;同时,结构体又是变量的集合,可以按照对基本数据类型的操作方法单独使用其变量成员。 注意:结构体不是一种类型,是一种统称,某种定义好的结构体,才是一种类型,才能定义变量。 1.1 结构体的含义 结构体类型定义的一般形式为: struct 结构体名 { 类型名 结构体成员名1; 类型名 结构体成员名2; ? ? ? 类型名 结构体成员名n; }; 1.2 结构体的定义 结构体的定义以分号结束,C语言中把结构体的定义看作是一条语句 1.2 结构体的定义 如: struct point { float x; float y; }; 此例定义了一个结构体类型名为struct point的数据类型(注意:point是结构体的名称,不是变量名),它由数据类型皆为实型的两个成员:x、y组成。虽然x、y的类型相同,也可以用数组的方式表示,但采用结构体描述整体性更强,增加了程序的可读性,使程序更清晰 1.3 结构体的使用 1、结构体变量的定义 在C语言中定义结构体变量的方式有三种: 单独定义:先定义一个结构体类型,再定义一个具有这种结构体类型的变量 混合定义:在定义结构体类型的同时定义结构体变量 无类型名定义:在定义结构体变量时省略结构体名 * 形式一 先构造结构体类的数据类型,后定义具有这种构造的变量。 struct 结构体类型名 { 类型标识符 成员名; : 类型标识符 成员名; }; struct 结构体类型名 变量名1,变量名2...; 例如: struct student { char number[10]; char name[20]; char sex; int age; }; struct student stud1,stud2; * 在构造结构体类的数据类型时同时定义具有这种结构的变量。 struct 结构体类型名 { 类型标识符 成员名; : 类型标识符 成员名; }变量名1,变量名2,...; 形式二 例如:struct student { char number[10]; char name[20]; char sex; int age; }stud1,stud2; * 利用无名结构体类型定义变量。 struct { 类型标识符 成员名; : 类型标识符 成员名; }变量名1,变量名2,......; 形式三 例如:struct { char number[10]; char name[20]; char sex; int age; }stud1,stud2; 1.3 结构体的使用 2、变量初始化 struct stud { long num; char name[20]; char sex; char addr[30]; }stud1={9708,”Li,‘M,“chenggong”}; 1.3 结构体的使用 3、变量成员使用 引用结构体成员的一般格式为: 结构体变量名 . 结构体成员名 例: friend1.age = 26; friend1.sex = ‘M’; strcpy(friend1.name,Zhang San); 此外,由于结构体成员运算符的优先级属最高级别,所以一般情况下都是优先执行,即和一般运算符混合运算时,结构体成员运算符优先。 结构体举例: #includestdio.h void main() { struct date{ int year,
您可能关注的文档
- FZQ1650型附着自升塔机拆除技术报告.ppt
- G00与G01编程技术报告.ppt
- GB213QuickChangeover-Ch技术报告.ppt
- GB50093-2013自动化仪表工程施工及质量验收规范1-5技术报告.ppt
- 1、项目试验员基础知识技巧.ppt
- GCK1技术报告.ppt
- 1.1发动机管理系统认识技巧.ppt
- GMP厂房设施设备-20130911技术报告.ppt
- 1.2充分条件与必要条件技巧.ppt
- 1.3..1推出与充分条件、必要条件技巧.ppt
- 人教版数学九年级上册《 二次函数》说课稿(共19张PPT).ppt
- 人教版八年级上册 12.2.2三角形全等的判定 “边角边”判定三角形全等 (共22张PPT).ppt
- 人教版初中数学2011课标版八年级上册第十二章12.2 三角形全等的判定 课件(共16张PPT).ppt
- 人教版九年级第十单元课题1浓硫酸1 (共18张PPT).ppt
- 人教版初中数学七年级上册 1.4 有理数的乘除法(共22张PPT).ppt
- 人教版八年级物理上册第1章 第2节运动的描述习题课件(共20张PPT).ppt
- 人教版九年级课题2酸和碱之间会发生什么反应(共21张PPT).ppt
- 人教版初中物理2011课标版 九年级 第十八章 电功率第三节 测量小灯泡的电功率(共25张PPT).pptx
- 人教版初中数学2011课标版九年级上册第二十四章24.1圆的有关性质(共17张PPT).ppt
- 人教版初中数学2011课标版九年级上册21.2解一元二次方程(共22张PPT).pptx
原创力文档


文档评论(0)