2010年学考试《高级语言程序设计》习题汇总.docVIP

2010年学考试《高级语言程序设计》习题汇总.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《高级语言程序设计》知识点总结(五) 来源:考试大 2006年12月20日 【考试大:中国教育考试第一门户】  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;   实现将指针变量ip所指变量的内容(即变量i的内容)赋给变量j.其中,赋位号右边的*ip 表示引用中所指变量的内容。上述赋值等价于:   j=1;   语句   *ip=200;   实现向指针变量ip所指变量(即变量i)赋值200.其中,赋值号左边的。ip表示引用ip所指变量。上述赋值等价于   i=200;   一般地,记号“* 指针变量名”与指针变量所指变量的“变量名”等价。要特别注意:指针变量之间的赋值,指针变量所指向的变量之间的赋值,这两种赋值在表示方法上的区别。如语句   intpt=ip;   使两个指针变量intpt与ip指向同一个对象,或都不指向任何对象(如果ip的值为NULL)。而语句   * intpt=*ip;   实现将ip所指变量的值赋给intpt所指的变量。这里要求中与intpt的值都不可以是

文档评论(0)

baa89089 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档