首页>计算机>软件水平考试>复习指导>正文
高级语言程序设计知识点 七

www.zige365.com 2010-7-28 10:48:48 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

     结构有多个成员,通常结构成员顺序地被安排在结构变量的内存决中,结构变量的地址是结构所占内存的开始地址,写成
     & 结构变量
而结构成员的地址写成
    & 结构变量.成员名

    6.结构数组
        一般地,常用结构描述有复杂数据信息的个体,而用数组描述个体的集合。当数组的元素是结构时,这种数组就称为结构数组。如用结构型描述单个学生,而用结构数组表示一个班的学生。
        与定义结构变量的方法相仿,在前述所有定义结构变量的方法中,在变量名之后指定元素个数,就能定义结构数组,也可赋初值。
      如同元素为标准数据类型的数组一样,结构数组各元素在内存中也顺序存放,初始化时,逐一给数组的每个元素指定结构初值。
        对结构数组元素的访问也是利用数组元素下标的引用方法,若引用结构数组元素的成员,
再用结构成员的引用方法,写成以下形式:
      结构数组名[元素下标]. 成员名
即首先是指定数组的元素,再指定结构的成员。
    引用结构数组元素成员地址的标记方法为
     & 结构数组名[元素下标]. 成员名
    引用结构数组元素地址的标记方法为
     & 结构数组名[元素下标] 
    引用结构数组首元素地址的标记方法为
    结构数组名
    7.结构指针变量
        把结构变量s所占据的存储段开始地址赋给能指向该结构的指针变量p,就说指针p指向结构变量s。指针p是一个结构指针变量,简称结构指针。定义结构指针的方法,与定义一般指针变量一样,当类型区分符是结构型时,所定义的指针变量即为结构指针。如代码
   struct date *pd, d;
定义结构指针pd和结构变量成其中,指针变量pd能指向类型为struct date的结构。赋值代码 pd=&d,使指针pd指向结构变量d。
   由指向结构的指针引用结构成员的标记形式为
        结构指针变量名->成员名
其中" ->”称为指向成员运算符。例如,如下代码:
  pd->day /* 引用结构变量d的成员day*/
  pd_>month /*引用结构变量d的成员month */
  pd-> year /* 引用结构变量d的成员year */ 
表达式"* 指针变量" 表示指针变量所指对象,所以通过指针引用其所指结构的成员也可写成以下形式:
   (*指针变量). 结构成员名
这里圆括号是必需的,因为运算符"*"的优先级低于运算符".",但是几乎不用这种标记方法,习惯都采用指向成员运算符“->”来标记。
    8.指向结构数组元素的指针
   结构指针变量也可指向结构数组的某个元素。如有定义:

 struct stdType std[50], *ps,*p;
代码:
  ps=&std[2];
  p=std;
使指针ps指向结构std[2],指针p指向结构std[0]。
        通过指针引用它所指数组元素的成员与指向普通结构一样,如代码 ps-> score引用std[2].score;而代码 p-> score引用std[0].score。
        当结构指针ps指向结构数组的元素std[k] 时,表达式ps+n表示指向结构数组元素 std[k+n]。利用指向结构数组元素的指针,引用结构数组元素的成员又有多种表示形式:
 (l) 利用结构数组元素的指针引用它所指数组元素的成员:

本新闻共6页,当前在第2页  1  2  3  4  5  6  

我要投稿 新闻来源: 编辑: 作者:
相关新闻
高级语言程序设计知识点 六
高级语言程序设计知识点 五
高级语言程序设计知识点 四
高级语言程序设计知识点 三
高级语言程序设计知识点 二