欢迎您访问贵州自考网!网站为考生提供贵州自考信息服务,供学习交流使用,非政府官方网站,官方信息以贵州省招生考试院(http://zsksy.guizhou.gov.cn/)为准 登录  网站导航

贵州自考网

自考热线:400-0929-629

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

编辑整理:  贵州自考网 发表时间:  2018-05-23   【   点击数:

 5.1  指针和指针变量

  指针是程序设计语言的一个重要概念。指针在C程序中有以下多方面的作用:

  (1)利用指针能间接引用它所指的对象。

  (2)利用各种类型的指针形式参数,能使函数增加描述能力。

  (3)指针与数组结合,使引用数组元素的形式更加多样、访问数组元素的手段更加灵活。

  (4)指针能用来描述数据和数据之间的关系,以便构造复杂的数据结构。当一个数据A要关联另一个数据B时,在数据A中增加一个指向数据B的指针就可实现数据A关联数据B.结合系统提供的动态分配存储设施,又能构造出各种动态数据结构。

  1.指针的基本概念

  为了区别内存的不同位置,内存被分成字节,内存的全部字节顺序地赋予一个称为地址的编号。程序中的变量将在内存中占据一定的内存字节,在这些字节中存储的数据信息称为变量的内容。一个变量占用连续的若干个内存字节时,最前面的一个字节的地址就作为该变量的地址。指针就是内存地址,是变量的地址,或函数的入口地址。变量的地址在程序执行时,起着非常重要的作用。当计算机在计算含有变量的表达式时,计算机按变量的地址取出其内容,并按变量的地址将计算结果存入到变量占据的内存中。如代码:

  int x=l;

  x=x+2;

  其中语句“x=x+2;”中的第一个x涉及到变量x占据的内存,第二个 x是引用变量 x的内容。该语句的意义是“取X的内容,完成加上2的计算,并将计算结果存入变量X占据的内存中。”

  2.指针变量和它所指向的变量

  在C语言中,地址也作为一种值,能被存储、比较、赋值,并称地址数据为指针类型,而称存储地址值的变量为指针变量,简称指针。C程序可用运算符&取变量的地址,如表达式&x

  的值就是变量X的地址。程序除能按名引用变量外,也可利用变量的地址引用变量。按变量名引用变量称为直接引用,而将变量A的地址存于另一变量B中,借助于变量B引用变量A称为对A的间接引用。

  3.指针变安的定义、初始化和引用

  指针变量用于存放某个变量的地址。定义指针变量的一般形式为:

  类型  * 指针变量名;

  或

  类型  * 指针变量名=初值表达式;

  其中,指针变量名是标识符,指针变量名之前的符号“*”,表示该变量是指针类型的。而最前面的“类型”,表示该指针变量能指向变量或函数的类型。初值表达式是一个地址表达式,如表达式中有某变量的地址表达式,则这个变量应是前面已定义的。

  在C语言中,当定义局部指针变量时,如未给它指定初值,则其值是不确定的。程序在使用它们时,应首先给它们赋值。误用其值不确定的指针变量间接引用其它变量,会引起意想不到的错误。为明确表示指针变量不指向任何变量,在C语言中用0值表示这种情况,记为NULL.如

  ip= NULL;

  也称指针值为0的指针变量为空指针。对于静态的指针变量,如在定义时未给它指定初值,系统自动给它指定初值0.

  指针变量取程序对象的(开始)地址值,不能将一个整型量或任何其它非地址值赋给一个指针变量。另外,指针变量对所指向的对象也有类型限制,不能将一个不能指向的对象的地址赋给指针变量。如有以下定义:

  int i=100,j,*ip,*intpt;

  float f,*fp;

  以下代码如注释所叙。

  iP=&i;/*使ip指向i*/

  intpt=ip;/*使intpt指向ip所指变量*/

  fp= &f;/*使fp指向正*/

  ip=NULL;/*使 ip不再指向任何变量*/

  5.2  指针变量的应用

  1.指向变目的指针变量

  当指针变量指向某个对象(它的值不是NULL)时,可以用

  * 指针变量

  引用指针变量所指向的对象。如语句:

  ip=&i;

  j=* ip;

[1]      


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

转载请注明:文章转载自(http://www.crzkw.cn/

本文地址:http://www.crzkw.cn/zl/5453.html


小编提示:添加【贵州自考网】招生老师微信,即可了解2025年贵州自考政策资讯自考报名入口准考证打印入口成绩查询时间以及领取历年真题资料个人专属备考方案等相关信息!

贵州自考网招生老师微信
(添加“贵州自考网”招生老师微信,在线咨询报名报考等相关问题)


贵州自考网微信公众号

贵州自考网课程中心

贵州自考网声明:

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

2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。

贵州自考便捷服务

  • 微信交流群
  • 微信公众号


微信扫一扫加入考生微信群
①学习交流、②考试提醒、③自考解答
④自考资料、⑤新闻通知、⑥备考指导

  • 视频课程
  • 真题下载
概率论与数理统计

概率论与数理统计

马克思主义基本原理概论

马原概论

中国近现代史纲要

中国近现代史纲要

思想道德修养与法律基础

思修03706

内科护理学(一)

内科护理学(一)

文学概论(一)

文学概论(一)