网站大量收购独家精品文档,联系QQ:2885784924

C语言程序设计曹哲曹哲书xg第6章节xg.ppt

C语言程序设计曹哲曹哲书xg第6章节xg.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 指针的初步知识 直接访问与间接访问 直接访问:按变量地址存取变量值 间接访问:通过存放变量地址的变量去访问变量 指针变量的初始化 一般形式:[ 存 储 类 型] 基类型 *指针名= 初始地址值; 与*运算符 含义 尚辅网 / 学习内容指南 6.1 指针的概念 6.2 指针变量的定义和引用 6.3 指针应用举例 指针是C语言中的一种特殊的数据类型,是C语言中十分重要的概念。C语言正是由于有了指针,不仅能更有效地实现像栈、堆、队列、链表、树、图等各种复杂的数据结构,而且能灵活而高效地处理字符串和数组,还能实现内存的动态分配,并能直接处理内存地址等等。另外,使用指针编程往往会明显提高执行效率。 前言 指针是C语言中的一种特殊的数据类型,是C语言中十分重要的概念。C语言正是由于有了指针,不仅能更有效地实现像栈、堆、队列、链表、树、图等各种复杂的数据结构,而且能灵活而高效地处理字符串和数组,还能实现内存的动态分配,并能直接处理内存地址等等。另外,使用指针编程往往会明显提高执行效率。 6.1 指针的概念 变量的地址 为了能够对内存进行访问,微型计算机的内存一般都是按照字节进行编址的,即每一个字节都由一个唯一的称为“地址”的编号来标识。 如果在程序中定义了一个某种类型的变量,在编译及运行程序时就会根据类型给这个变量分配指定连续字节数的一个存储单元。 6.1 指针的概念 程序中: int i; float k; 内存中每个字节有一个编号-----地址 …... …... 2000 2001 2002 2005 内存 0 2003 i k 编译或函数调用时为其分配内存单元 变量是对程序中数据 存储空间的抽象 6.1 指针的概念 指针 由于通过变量的地址才能找到该变量的存储单元,可以说变量的地址指向该变量单元,因此,将地址形象地称为指针,指针指向该变量单元。 一个变量的地址称为该变量的指针。 对变量的两种访问方式 在C语言中,对变量的访问有两种方式,一种是“直接访问”方式,另一种是“间接访问”方式。 直接访问方式。按变量名直接访问该变量的存储单元,称为直接访问方式。 间接访问方式。由于变量的地址(即指针)也是一种数据,因此在C中,可以定义一种特殊的变量,用它来存放变量的地址。 6.1 指针的概念 例如下列语句: a = 4 ; printf ( %d , a ) ; a 2000 4 例如定义了一个专门存放int型变量的地址的变量p,并将变量a的地址2000存入变量p中。于是,通过变量p,就可以间接访问变量a,其访问过程如下: ① 先访问变量p,即通过变量p的地址2004找到地址为2004、2005的两字节,从中取出地址2000; ② 再通过该地址2000找到地址为2000、2001的两字节(即变量a的存储单元); ③ 最后对该单元进行存取(比如将4存入变量a中)。 a 2000 4 2000 p 2004 指针变量 专门用来存放另一个变量的地址(即指针)的变量,称为指针变量(是一种变量)。指针变量实际就是地址变量,它是用来存放地址值的,或者说是用来存放指针值的。由于变量p中存放了变量a的地址2000,通过该地址可以找到a的单元,因此称指针2000指向变量a,或称指针变量p指向变量a,并以箭头形象地表示这种指向关系。可见,指向就是通过地址即指针来体现的。 6.1 指针的概念 …... …... 2000 2004 2006 2005 整型变量i 10 变量i_pointer 2001 2002 2003 2000 指针 指针变量 变量的内容 变量的地址 指针变量 变量 变量地址(指针) 变量值 指向 地址存入 指针变量 6.1 指针的概念 i 2000 3 i 2000 i=3; i_pointer 2000 指向 3 *i_pointer = 3; 3 3 6.1 指针的概念 变量的指针:变量在内存单元占用的地址(首地址) 那为什么不就叫“地址”呢?! 实际上我们在C程序中用到的并不是代表地址的“指针”,而是另有所指啊! 指针变量:存放变量地址的变量。 存放“指针”(地址值)的特殊变量 指针变量的定义 一般形式: [存储类型] 基类型 *指针名; 合法标识符 指针变量本身的存储类型 指针的目标变量的数据类型 表示定义指针变量 不是‘*’运算符 例 int *p1,*p2; float *q ; static char *n

文档评论(0)

精品课件 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档