C语言教程之指针.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 指 针 页码,1/18 第七章 指 针 【学习目标】 ()能够使用指针。 1 (2 )理解指针、数组、字符串间的密切关系。 ()能够使用指针通过按引用调用向函数传递参数。 3 (4 )理解如何使用函数指针。 指针是 语言中一种重要的数据类型,也是 语言的精华。正确而灵活地运用它,可以处理各种复杂的数据结构,能使 C C 程序简洁、紧凑、高效。每一位学习和使用C语言的人,都应当深入地学习和掌握指针。本章将介绍指针的基础知识和指针 的使用方法。 指针的概念比较复杂,使用也比较灵活,因此初学时应多思考、多比较、多上机,在实践中掌握它。 7.1 指针的概念 对程序中定义的某个变量,编译时根据它的数据类型给它分配一定长度的内存空间。如整型变量分配 个字节,字符型 2 变量1个字节,双精度变量分配8个字节……内存中的每个字节都被按顺序进行编号,就好像旅馆中的每个房间和它的房间 号,我们把每个字节的编号叫做该字节的地址。在地址所对应的单元存放数据,就相当于旅馆客房中住旅客一样。 迄今为止,我们的操作对象是基本类型和数组类型的变量,这些变量都存放具体的变量值,要标识的和处理的对象也都 是变量本身。然而在不少使用场合,例如,系统程序设计中必须涉及到对变量存放地址的加工,通过地址获得存放于地址中 的变量本身。 7.1.1 内存的访问方式 对内存变量的存取有两种方式:直接访问、间接访问。 1. 直接访问 每个变量对应自己的地址,数据输出就是根据变量和地址的对应关系找到变量地址,然后从地址中取出数据。数据输入 就是将值送到变量所在存储单元中。如图7-1所示,i=2 、j=6 、k=8通过变量i 、j 、k来访问存储单元。 2. 间接访问 将变量对应的地址放入另一个存储变量中,输出数据时先找到存放地址的单元地址,从中取出地址,然后到该地址所指 单元取出数据。如图 所示,如变量 ,不知道其值及地址,而只知道它的地址放在 、 中,因此可通过存放地址的 7-1 i 3000 3001 单元找到变量i 的对应地址2000 ,再由地址2000找到最终要访问的变量i 的值2 。 /jpkc/cyy/wlkt/7.htm 2010-5-31 第七章 指 针 页码,2/18 内存用户数据区 …… 2000 2 变量i 2002 6 变量j 2004 8 变量k …… 3000 2000 变量i_pointer 图7 1 变量存放示意图 对间接访问,可定义一变量存放地址,如定义变量i_pointer, 赋值i_pointer=i 。 7.1.2 指针与指针变量 一个变量的地址称为该变量的“指针”。例如,地址 就是变量 的地址,也可以说,变量 的指针是 。 2000 i i 2000 存放地址的变量称为“指针变量”。换言之,指针变量就是存放变量地址的变量。上述的i_pointer是存放变量i地址的指 针变量。这里,大家应注意区分“指针”和“指针变量”两个概念。 指针可以指向不同类型的变量,因而我们说指针也是具有类型的,即根据它所指向变量类型的不同而具有不同的类型。 例如:指向float

文档评论(0)

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

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

1亿VIP精品文档

相关文档