- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第14章 结构体、共用体和用户自定义类型 用 法 1、简单数据类型 typedef float REAL ; REAL a,b; =float a,b; 2、数组 typedef char STR[80]; STR s1; =char s1[80]; 3、指针 typedef float *PF; PF p; =float *p; 4、函数 typedef char FCH( ); FCH a; =char a( ); 结构体 1.概述 数 组 是构造类数据,其数组元素必须是同一数据类型的。 结构体 也是构造类数据,但其成员可以是任何类型的。 构造类型使用户可以象处理单个变量一样来处理复杂的数据结构。 使用结构体的一般步骤 根据问题的要求定义一个结构体类型 用自己定义的结构体类型定义结构体变量 在程序中使用结构体变量处理问题 比较普通变量的情况: 用系统给定的数据类型定义变量 在程序中使用变量处理问题 如何定义结构体类型? 结构体是一种构造数据类型。 用途:把不同类型的数据组合成一个整体。自定义数据类型。 一个示例 小结:什么是“结构体类型”? 用户自己定义的构造型数据类型 由若干数据项(成员)组成 同一结构体中的成员可以具有不同的数据类型 注意成员定义与普通变量定义的区别: 成员定义时——不为其分配内存 变量定义时——为其分配内存 结构体类型的特点: 组成结构体的成员本身必须是一种已有定义的数据: 基本类型成员(整型/字符型/实型) 指针类型成员 数组类成员 其他构造类成员(包括已定义的另一种结构体) 注意:成员≠变量,故成员名可与变量名同名,结构体类型可以有千千万万种,表示由若干不同数据项组 成的复合类型。 定义结构体类型时,系统不会为该结构体分配内存(只是定义类型,而非变量声明) 其他有关知识… 实际使用中,还可以使用以下形式: #define STU struct student STU stu1,stu2; 比较一下两种变量定义方式的异同: int a,b,c; 定义三个整型变量,每个变量占四个字节,可单独赋值。 struct student a,b,c; 定义三个结构体类型变量,每个变量下有若干“成员”。其占用的内存长度等于各成员项长度之和。 示例 示例 【例五】若有以下定义,则正确的赋值语句为 。 struct complex { float real; float image;}; struct value { int no; struct complex com; }val1; 3、结构体变量的初始化和赋值 使一个结构体变量获得数据“值”(实际上是给其各个成员赋值)有三种方法: ① 定义时初始化之 ② 用赋值语句对各成员分别赋值 ③ 同类型的结构体变量间相互赋值 如 student1=student2 示例: ① 定义时初始化 main() { struct { char name[15]; char class[12]; long num; } stu={Wenli,Computer,200113}; printf(%s\n%s\n%ld\n,,stu.class,stu.num); } 示例: ② 用赋值语句对各成员分别赋值 【例七】 main() { struct { char name[15]; char class[12]; long num; } stu={Wenli,Computer,200113}; [0]=1; stu.class[2]=A; stu.num=1111; printf(%s,%s,%d\n,,stu.class,stu.num); } 4、结构体变量的引用 只能引用其成员变量 用圆点(成员运算符
文档评论(0)