欢迎您访问广东自考网!本站非政府官方网站,官方信息以广东省教育考试院(http://eea.gd.gov.cn/)为准。 RSS导航 | 网站导航

广东自考网

服务热线:177-2280-6683

广东自考交流群 | 在线提问 | 公众号

《高级语言程序设计》知识点总结(七)

编辑整理:广东自考网  发表时间:2018-05-23 12:26:55  【加入自考交流群】


立即购买

《自考视频课程》名师讲解,轻松易懂,助您轻松上岸!低至199元/科!

 7.1  结构型和结构变量

  1.结构型

  结构型是由若干独立意义成员组成的复杂数据。定义一个结构型的一般形式为

  struct 结构型名{

  数据类型1 成员1名;

  数据类型2 成员2名;

  ……

  数据类型n 成员n名;

  };

  其中关键字“struct”引出结构型的定义。用花括号括住结构型的成员说明表,指明组成此结构型全部成员的数据类型和名称。结构型的成员也称为域。如某个系统的学生数据实体用如下结构型来描述:

  struct stdType {

  int  num;/*学号*/

  char  * name;/*姓名,允许姓名字符串长度可变,按需要申请*/

  char  sex;/*性别'M' 表示男生,'F'表示女生*/

  int age;/*年龄*/

  int score;/*成绩*/

  char *addr; /*家庭地址,允许地址字符串长度可变,按需要申请*/

  } ;

  上例定义结构型struct stdType,有六个成员。实际上,凡是相关的若干数据对象都可组合成一个结构,在一个结构名下进行管理。

  结构成员的数据类型可以是任何类型,包括前面定义的其它结构型,但是结构不能包含自身,而允许结构中可有这样的指针成员,指向如同定义一样的结构。

  2.结构变量

  结构型的变量就是结构变量,程序要使用结构数据,需定义结构变量。结构变量也简称结构。定义结构变量有以下几种不同的方法。

  (l)先定义结构型,再定义结构变量。如利用前面已定义的结构型struct stdType,以下代码

  struct  stdType st1,st2,stdArray[200]

  定义结构变量st1、st2和结构数组stdArray.

  (2) 在定义结构型时,同时定义结构变量。如代码

  struct point {/*某绘图程序的坐标类型*/

  int x;

  int y;

  } p1,p2;

  定义struct point型变量 p1、p2.

  (3) 在定义无名结构型时,同时定义结构变量。如某种形式的结构型只是一次性定义几个变量,可以省略结构型名,直接定义结构变量。如由日、月、年组成的日期结构变量为:

  struct

  int day; /*日*/

  int month;/*月*/

  int year;/*年*/

  } date1,date2;/*定义两个日期变量datel和date2*/

  3.结构变量初始化

  在定义结构变量时,可同时给它置初值,称为结构变量初始化。结构变量初始化时,要按其结构型定义中的成员顺序逐一给出各成员的初值。如

  struct point2 /* 说明绘图程序的坐标类型*/

  int x;

  int y;

  } p3={ 20,50};

  结构变量初始化时,对初值表达式的要求与数组初始化对初值表达式的要求相同。

  4.结构变量的引用

  结构变量定义后,就可以用结构变量的名引用结构。 ANSI C还允许相同类型的结构变量相互赋值。

  5.结构变量成员的引用

  引用结构变量成员的标记形式为:

  结构变量名。成员名

  其中“。” 称为成员运算符。例如,datel.year引用结构变量datel的year成员。因该成员的类型为int型的,可以对它施行任何int型变量可施行的运算。例如,赋值运算datel.year=2000.如结构变量的某成员又是结构,要引用其成员的成员,则继

[1]      


本文标签:广东自考 串讲笔记 《高级语言程序设计》知识点总结(七)

转载请注明:文章转载自(http://www.zikaogd.com

本文地址:http://www.zikaogd.com/zl/5449.html

分享到:QQ空间新浪微博腾讯微博人人网微信 浏览热度(

加载中~

《广东自考网》免责声明:

1、由于考试政策等各方面情况的调整与变化,本网提供的考试信息仅供参考,最终考试信息请以省考试院及院校官方发布的信息为准。

2、本站内容部分信息均来源网络收集整理或来源出处标注为其它媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:812379481@qq.com。

广东自考便捷服务