《C语言》课程教学课件(PPT讲稿)第5章 指针

第5章 指针
第5章 指 针

回顾 口数组是可以在内存中连续存储多个元素的结构数组中的所 有元素必须属于相同的数据类型 口数组必须先声明,然后才能使用。声明一个数组只是为该 数组留出内存空间,并不会为其赋任何值 口数组的元素通过数组下标访问 口一维数组可用一个循环动态初始化,而二维数组可用嵌套 循环动态初始化 口二维数组可以看作是由一维数组的嵌套而构成的
回顾 ❑ 数组是可以在内存中连续存储多个元素的结构数组中的所 有元素必须属于相同的数据类型 ❑ 数组必须先声明,然后才能使用。声明一个数组只是为该 数组留出内存空间,并不会为其赋任何值 ❑ 数组的元素通过数组下标访问 ❑ 一维数组可用一个循环动态初始化,而二维数组可用嵌套 循环动态初始化 ❑ 二维数组可以看作是由一维数组的嵌套而构成的

目标 口理解指针的概念 口定义指针变量 口掌握对指针的操作 口理解指针和数组的关系
目标 ❑理解指针的概念 ❑定义指针变量 ❑掌握对指针的操作 ❑理解指针和数组的关系

int x, y, Z5 x=58 y=32; Z=X+y 定义了三个整型变量x、y、Z,编译时系统会自动 为它们各自分配两个内存单元(因为整型量古2个单 元),假设3000和3001两个单元分配给变量x,3002和 3003分配给变量y,3004,3005分配给变量z。如图5 所西9其中每个变量占用的内存单元的首地址即为该 变量的地址。如变量x的地址为3000,y的地址为3002, 的地址为3004。 执行语句x=58;首先是根据变量名与地址的对应 关系,找到变量x的地址3000,然后将数据586懂到丛 由300始的两个字节中。同理,y=32语句的行将 数据3存储到从由300.开始的两个字节中。显然 32则分别为变量x和y所对应的内容
int x,y,z; x = 58; y = 32; z = x + y; 定义了三个整型变量x、y、z,编译时系统会自动 为它们各自分配两个内存单元(因为整型量占2个单 元),假设3000和3001两个单元分配给变量x,3002和 3003分配给变量y,3004,3005分配给变量z。如图5-1 所示。其中每个变量占用的内存单元的首地址即为该 变量的地址。如变量x的地址为3000,y的地址为3002, z的地址为3004。 执行语句 x = 58;首先是根据变量名与地址的对应 关系,找到变量x的地址3000,然后将数据58存储到从 由3000开始的两个字节中。同理,y = 32语句的执行将 数据32存储到从由3002开始的两个字节中。显然58、 32则分别为变量x和y所对应的内容

soON B中 声导 Return
[Return]

地址和指针的概念 内存区的每一个字节有一个编号,这就是“地址” 如果在程序中定义了一个变量,在对程序进行编译时 系统就会给这个变量分配内存单元 直接访问与间接访问(例如找人) 1.按变量地址存取变量值的方式称为“直接访问”方式 pri n t f("%d", i) s ca nf(o d",&i) k=i十j;
地址和指针的概念 内存区的每一个字节有一个编号,这就是“地址” 。 如果在程序中定义了一个变量,在对程序进行编译时, 系统就会给这个变量分配内存单元。 直接访问与间接访问(例如找人) 1.按变量地址存取变量值的方式称为“直接访问”方式 printf(″%d″,i); scanf(″%d″,&i); k=i+j;

内存用户数据区 2000 变量i 2002 变量j 2004 变量k 3010 2000 变量i_ pointer

2.另一种存取变量值的方式称为“间接访问”的方式 即,将变量i的地址存放在另一个变量中(用存储在 一个变量中的地址去访问这个地址所指示的内存单元 的方式) 在C语言中,指针是一种特殊的变量,它是存放地址的。例 如上图中,整型变量i的内容为3,占用了从地址2000开始的 两个连续存储单元。偎设又定义了一个变量 I pointer,假若 I pointer的值为200,也就是说, 1 pointer的内容为x的地址 我们专门定义了一个变量 1 pointer用来存放另一个变量的地 址,以后如果我们要访问变量i内容,可以不通过道接访问, 而是通过变量 1 pointer,用变量 1 pointer内的地址间接地去访 问变量i,这种访问方式就称为间接访问
2. 另一种存取变量值的方式称为“间接访问”的方式。 即,将变量i的地址存放在另一个变量中(用存储在 一个变量中的地址去访问这个地址所指示的内存单元 的方式) 。 在C语言中,指针是一种特殊的变量,它是存放地址的。例 如上图中,整型变量i的内容为3,占用了从地址2000开始的 两个连续存储单元。假设又定义了一个变量i_pointer ,假若 i_pointer的值为2000,也就是说, i_pointer的内容为x的地址。 我们专门定义了一个变量i_pointer用来存放另一个变量的地 址,以后如果我们要访问变量i的内容,可以不通过i直接访问, 而是通过变量i_pointer,用变量i_pointer内的地址间接地去访 问变量i ,这种访问方式就称为间接访问

指针和指针变量的定义: 个变量的地址称为该变量的“指针” 例如,地址2000是变量i的指针。在计算机中,地址 实际上也是数据(如3001,3002等),所以地址也可 以作为存储单元的内容存放在一个变量中,用来存放 指针数据的变量叫做指针变量。如果有一个变量专门 用来存放另一变量的地址(即指针),则它称为 “指针变量”。上述的 ointer就是一个指变 量。称 i pointer指向变量i,或说 i pointer是指向 变量iⅰ的指针
一个变量的地址称为该变量的“指针”。 例如,地址2000是变量i的指针。在计算机中,地址 实际上也是数据(如3001,3002等),所以地址也可 以作为存储单元的内容存放在一个变量中,用来存放 指针数据的变量叫做指针变量。如果有一个变量专门 用来存放另一变量的地址(即指针),则它称为 “指针变量”。上述的i_pointer就是一个指针变 量。称i_pointer指向变量i,或说i_pointer是指向 变量i的指针。 指针和指针变量的定义:

指针简介21 变量 int x int ptr x 10 ED53 指针 地址 ED53 内存 数据 指针ptrx指向变量x
指针简介 2-1 内存 10 int x 地址 ED53 变量 数据 ED53 int ptr_x 指针 指针 ptr_x 指向变量 x
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言》课程教学资源(讲义)上机实验.doc
- 《C语言》课程教学课件(PPT讲稿)第3章 C语言的基本程序设计.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第九章 编译预处理.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第八章 函数.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第七章 数组.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第六章 循环控制.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第五章 选择结构程序设计.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第四章 最简单的C程序设计—顺序程序设计.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第三章 数据类型、运算符与表达式.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第二章 程序的灵魂—算法.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第一章 概述(主讲:台安).ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第十三章 文件.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第十二章 位运算.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第十一章 结构体.ppt
- 海南大学:《C语言程序设计》课程电子教案(PPT教学课件)第十章 指针.ppt
- 《C语言程序设计》课程教学资源:C语言输入输出函数(台安).ppt
- 清华大学:《单片机原理与应用技术》课程教材电子教案(PPT课件讲稿)第9章 串行扩展技术.ppt
- 清华大学:《单片机原理与应用技术》课程教材电子教案(PPT课件讲稿)第8章 串行通信.ppt
- 清华大学:《单片机原理与应用技术》课程教材电子教案(PPT课件讲稿)第7章 并行扩展技术.ppt
- 清华大学:《单片机原理与应用技术》课程教材电子教案(PPT课件讲稿)第6章 定时器/计数器.ppt
- 《C语言》课程教学课件(PPT讲稿)第6章 函数(1/2).ppt
- 《C语言》课程教学课件(PPT讲稿)第6章 函数(2/2).ppt
- 《C语言》课程教学课件(PPT讲稿)第1章 概述.ppt
- 《C语言》课程教学课件(PPT讲稿)第2章 C语言的数据类型、运算符和表达式.ppt
- 《C语言》课程教学课件(PPT讲稿)第3章 C语言的基本程序设计.ppt
- 《C语言》课程教学课件(PPT讲稿)第4章 数组.ppt
- 《C语言》课程教学课件(PPT讲稿)第5章 指针.ppt
- 《C语言》课程教学课件(PPT讲稿)第6章 函数.ppt
- 《C语言》课程教学课件(PPT讲稿)第7章 常用基本算法的C语言实现.ppt
- 《C语言》课程教学课件(PPT讲稿)第8章 结构体、共用体和枚举类型.ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第一章 计算机网络概述(溪利亚).ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第三章 数据链路层(1/2).ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第三章 数据链路层(2/2).ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第二章 物理层.ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第五章 运输层.ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第六章 应用层.ppt
- 武昌首义学院(华中科技大学武昌分校):《计算机网络》课程教学资源(PPT课件讲稿)第四章 网络层.ppt
- 计算机应用基础:《网络营销实用教程》课程教学资源(案例讨论)联通CDMA战略与战术的失衡.doc
- 《网络营销基础与应用》课程教学资源(PPT课件)第二章 网络目标市场调研.ppt
- 计算机应用基础:《网络营销实用教程》课程教学资源(案例讨论)hao123成功秘笈.doc