《C语言程序设计》课程教学资源(PPT课件讲稿)第10章 指针

第十章
第十章

5101地址利指街的概念 为了说清楚什么是指针,必须弄清楚数效据在内 存中是如问存储的,又是如何读取的。 内存区的每一个字节有一个编号,这就是“地 址”。如果在程序中定义了一个变量,在对 程序进行编译时或程序运行时,系统就会给这 个变量分配內存单元
§10.1地址和指针的概念 为了说清楚什么是指针,必须弄清楚数据在内 存中是如何存储的,又是如何读取的。 内存区的每一个字节有一个编号,这就是“地 址” 。如果在程序中定义了一个变量,在对 程序进行编译时或程序运行时,系统就会给这 个变量分配内存单元

变量的两个物理意义 2000 001 变量的内容 loat x, 2002 2003 2004 变量的地址 2005
main() {float x; int y; … } 变量的两个物理意义 2000 2001 2002 2003 2004 2005 … x y 变量的内容 变量的地址

利用变量名 InaRi 存取数据的方式 [int a,b, ci 称为“直接存取 52000 ”方式。 E2001 b=3 直接将整数存八型a 32002 2003 c=t甲直接将整数3存入变量b 82004 接将变量a、b的值 2005 取出,相加后存入变量c
main() {int a,b,c; a=5; b=3; c=a +b; … } 2000 2001 2002 2003 2004 2005 abc 5 直接将整数 5 存入变量 a 3 直接将整数 3 存入变量 b 8 直接将变量 a 、 b 的值 取出,相加后存入变量 c 利用变量名 存取数据的方式 称为“直接存取 ”方式

另种取变量值的方式称为“间接访间 的方式。即将变量L的地址存放在另一个 变量中。 在C语言中,指针是一种特殊的变量,它是 存放地址的
另一种存取变量值的方式称为“间接访问” 的方式。即将变量i的地址存放在另一个 变量中。 在C语言中,指针是一种特殊的变量,它是 存放地址的

假设我们定义了一个指针变量 i pointer用来存放整型变量的地址, 它被分配地址为(3010)、(3011的两 个字节。可以通过语句: i pointer=& i s 2000 将i的地址(2000到 pointer中。 这时, i pointer值就是2000即 pointer 变量i所占用单元的起始地址。要存 取变量i的值,可以采用间接方式:200 先找到存放“i的地址”的变量 pointer,从中取出i的地址(200) 2000 然后到2000、2001字节取出i的值 (3)
假设我们定义了一个指针变量 i_pointer用来存放整型变量的地址, 它被分配地址为(3010)、(3011)的两 个字节。可以通过语句: i_pointer =&i; 将i的地址(2000)存放到i_pointer中。 这时, i_pointer的值就是(2000) ,即 变量i所占用单元的起始地址。要存 取变量i的值,可以采用间接方式: 先找到存放“i的地址”的变量 i_pointer ,从中取出i的地址(2000), 然后到2000 、 2001字节取出i的值 (3)

指针和指针变量的定义: 个变量的地址称为该变量的“指针 例如,地址2000是变量i的指针。如果有一个变量 专门用来存放另一变量的地址(即指针),则它称 为“指针变量”。上述的 pointer就是一个指针变 指针变量的值(即指针变量中存放的值)是地址 (即指针)。请区分“指针”和“指针变量”这 两个概念
一个变量的地址称为该变量的“指针”。 例如,地址2000是变量i的指针。如果有一个变量 专门用来存放另一变量的地址(即指针),则它称 为“指针变量”。上述的i_pointer就是一个指针变 量。 指针和指针变量的定义: 指针变量的值(即指针变量中存放的值)是地址 (即指针)。请区分“指针”和“指针变量”这 两个概念

9102变量的指针和指向变量的指量 指针变量用来指向另一个变量 pointer来1 pointer 为了表示指针变量和它所指向的 变量之间的联系,在程序中用 2000 ”符号表示“指向”,例如: _ pointer代表指针变量,而 2000 pointer是 pointer所指向的 变量,即 pointer也代表一个 变量,它和变量是同一回事。 1)i=3 2)*1 pointer=3; 这两个语句作用相同。 1021定义一个指针变量 定义指针变量的一般形式为 基类型啪针变量名
§10.2 变量的指针和指向变量的指针变量 10.2.1 定义一个指针变量 定义指针变量的一般形式为 基类型 *指针变量名; 指针变量用来指向另一个变量, 为了表示指针变量和它所指向的 变量之间的联系,在程序中用 “*”符号表示“指向”,例如: i_pointer代表指针变量,而 *i_pointer是i_pointer所指向的 变量,即*i_pointer也代表一个 变量,它和变量i是同一回事。 1)i=3; 2)*i_pointer=3; 这两个语句作用相同

不面部是育的y float *pointer_3;∥ pointer_3是指向oa变 量的指针变量 char pointer4; pointer.4是指向字符型变量的 指针变量 pointer 1 可以用赋值语句使一个 指针变量得到另一个变 量的地址,从而使它指 向一个该变量。如: pointer pointer 1=&i; pointer 2&
下面都是合法的定义: float *pointer_3; // pointer_3是指向float型变 量的指针变量 char *pointer_4; //pointer_4是指向字符型变量的 指针变量 可以用赋值语句使一个 指针变量得到另一个变 量的地址,从而使它指 向一个该变量。如: pointer_1=&i; pointer_2=&j;

2000 E2001 指针变量定义的形式指针变量初始化 2002 void main( maino 2000 2003 dint a, *p I int a, p=&a 2004 float x, q float x,*q=&x; 2005 p && a 2006 2007 2008 2004 2009
main() { int a,*p=&a ; float x,*q=&x ; …} 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 apxq 2004 void main() 2000 {int a,*p; float x,*q; p = &a ; q = &x ; …} 指针变量定义的形式 指针变量初始化
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第8章 函数.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第3章 数据类型、运算符与表达式.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第6章 循环结构程序设计.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第5章 选择结构程序设计.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第8章 函数与预处理命令.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第2章 算法.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第7章 数组.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第4章 顺序结构程序设计.ppt
- 上海交通大学:《C++程序设计》课程教学大纲 C++ Programming(主讲:王群慧).doc
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)程序调试简介.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第八章 类与对象(2/2).ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第八章 类与对象(1/2).ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第七章 自定义数据类型.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第六章 指针.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第五章 数组.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)作用域和生存期.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第四章 模块化与函数.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第三章 结构化程序设计.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第二章 数据类型、运算符、表达式.ppt
- 上海交通大学:《C++程序设计》课程教学课件(PPT讲稿)第一章 初步知识.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第8章 函数与预处理命令.ppt
- 河南工业大学:《微机原理与接口技术》第一章 计算机基本知识.ppt
- 河南工业大学:《微机原理与接口技术》第二章 8086体系结构.ppt
- 河南工业大学:《微机原理与接口技术》第三章 8086的指令系统.ppt
- 河南工业大学:《微机原理与接口技术》第四章 8086汇编语言程序设计.ppt
- 河南工业大学:《微机原理与接口技术》第五章 存储器原理与接口.ppt
- 河南工业大学:《微机原理与接口技术》第六章 微型计算机的输入/输出.ppt
- 河南工业大学:《微机原理与接口技术》第七章 可编程接口芯片.ppt
- 河南工业大学:《微机原理与接口技术》第八章 串行输入/输出接口.ppt
- 河南工业大学:《微机原理与接口技术》第九章 中断.ppt
- 《Visual C++编程技术》课程电子教案(讲义)第1章 Visual c++6.0基本应用程序的创建.pdf
- 《Visual C++编程技术》课程电子教案(讲义)第2章 Windows编程与MFC基础.pdf
- 《Visual C++编程技术》课程电子教案(讲义)第3章 面向对象程序设计与C++语言.pdf
- 《Visual C++编程技术》课程电子教案(讲义)第4章 基本输入—键盘和鼠标消息.pdf
- 《Visual C++编程技术》课程电子教案(讲义)第5章 菜单、工具栏和状态栏编程.pdf
- 厦门理工学院(厦门理工大学):《高级语言程序设计》课程电子教案(PPT教学课件)第7章 指针(教师:吴芸).ppt
- 清华大学:《C语言程序设计》课程电子教案(PPT教学课件)第四章 选择结构程序设计.ppt
- 清华大学:《C语言程序设计》课程电子教案(PPT教学课件)第五章 循环结构程序设计.ppt
- 清华大学:《C语言程序设计》课程电子教案(PPT教学课件)第六章 数组.ppt
- 清华大学:《C语言程序设计》课程电子教案(PPT教学课件)第七章 函数调用.ppt