C语言中数组与指针关系探讨研究.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言中数组与指针关系探讨 李廷元张选芳 中国民航飞行学院计算机学院,四川广汉618307 【摘要】 对C语言中的指针、数组等概念进行了讨论,详细阐明了数组与指针的关系. 【关键词】 C语言指针数组二维数组指针数组 在C语言中,数组和指针是两个非常重要的数据类型,它们之间有着十分密切的关系, 都适合用于处理内存中连续存放的同类型数据。利用数组可以简化对数据的处理,而指针 则是C语言的精髓,指针和数组的结合,能处理极其复杂的数据结构,给应用程序带来极 大的灵活和方便。本文探讨了数组和指针间的这种密切关系。 1 指针 1.1指针的概念 在不同版本的C语言教材中,对于什么是指针.有不同的说法。第一种说法,指针是 一种用于存放另外一个变量的地址的变量【l】,指针(pointer)是存放内存地址的变量【2】。 第二种说法,一个变量的地址称为该变量的“指针”,如果有一个变量专门用来存放另外一 个变量的地址(即指针),则它称为“指针变量”,指针是一个地址,而指针变量是存放地 址的变量【3】。第三种说法,指针是一种低级数据类型,它存放的是某一数据的地址,该地 址中存放的可能是任何一种数据类型【4】。总结上面的三种说法,第一种说法,认为指针是 变量,忽略了指针常量,如数组名、函数名等,是不全面的。第二种说法,认为指针是地 址,只强调了指针的值,例如,地址2000是变量i的指针,把指针的值与指针的概念混为 一谈。第三种说法,认为指针是一种数据类型。 综上所述,C语言中指针是一种数据类型,它是表示别的数据(常量、变量、函数等) 的地址的数据,有指针变量和指针常量两种形式【5】。在上下文含义不发生混淆的情况下, 可以把指针变量简称为指针。 1.2指针变量的定义 定义指针变量的一般形式为:type木name; 其中。type是指针的基类型,基类型用于说明指针变量可以指向的变量的类型。flame 为指针变量的名称。·用于说明其后面的name是指针变量,其值是地址,该地址中存放的 数据类型为type。 542 1.3指针操作符 1.3.1取地址运算符 指针变量的值是地址,这个值可以是常量地址,也可以是某个变量的地址。在程序中, 如何给指针变量赋值呢?可以通过实现。是一元操作符,返回其操作数的内存地址, 即用于取得某个变量的地址。例如: int●p,i# /幸定义指针变量P和整型变量i*/ P·‘ij /宰将变量i的地址赋值给指针变益p*/ 对于上面的语句,可以这样理解:假设变量i用内存单元2000保存其值,同时假定i 的值为100,执行上面的语句后,P的值为2000,地址2000处存放的数据为100。 1.3.2取内存单元数据运算符木 ·为一元操作符。它返回其操作数所示地址处的值。可以通过章运算符将地址所标识的 内存单元的数据取出。例如: int峰,i=100,J;/I定义指针变量P和整型变量i和J,i的初值为100./ Ps&i; /衅苷变量i的地址赋值给指针变量p*/ J·印; /宰将指针变量P所标识的地址2000处存放的值100取出赋值给j*/ 执行上面的语句后。j的值将为100。 1.3.3和奉的关系 ·和是互补的关系。获取变量的内存地址,·则用于获取内存地址处的数据。当·和 组合在一起使用时,其作用相互抵消。例如: int i一3;int●p;p-&ij 对于上面的三条语句,可以衍生出下面的运算:对P=i;作幸运算,即幸p=·i=i;得 2数组 2.1数组的概念 数组是一种构造数据类型。它是由一组相同类型的数据元素按照一定顺序组成的数据 结构。通过数组的定义,可以利用数组名对具有相同数据类型的一组数据元素进行整体标 识。例如,int a【5】:定义了一个名为a的数组,该数组包含5个相同类型(整数)的元素, 编译系统为该数组在内存中开辟可存放5个整型数据的内存空间。此后,对数组元素不必 一一声明就可直接引用。如,若引用数组中的第0个元素,可使用下标法a[Ob引用数组 中的第一个元素,可使用下标法a【1】;引用数组中的第i

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档