下载此文档

c语言指针完整ppt课件.ppt


文档分类:IT计算机 | 页数:约82页 举报非法文档有奖
1/82
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/82 下载此文档
文档列表 文档介绍
第9章 指 针
1
完整版课件
特 点
能直接对内存地址操作, 使用灵活
实现动态存储管理
可以使程序简洁、紧凑、高效
用间接访问的方式改变数据的逻辑顺序
调用函数时可实现变量的引用传递
2
完整版课件
地址和指针的概念
变量的地址和变量的值
int i=3;
float j=6;
double k=9;
3


变量i
变量j
变量k
2200
2206
2202
2214
程序中定义的变量, 系统根据它的
类型给它分配一定长度的内存单元,
该内存单元的起始地址即为变量的地址。
该内存单元的内容就是变量的值。
3
完整版课件
直接访问和间接访问
直接访问:
用变量名直接从它对应的地址存取内容。
如: int x=5,y=8,z=0;
z =x+y;
5
8
0
变量x
变量y
变量z
2200
2202
2204
13
直接从 x 和 y 对应的地址2200和2202
取出内容5和8然后相加将结果13存入
变量 z 对应的地址2204的单元中。
4
完整版课件
间接访问
定义一个存放地址的变量p
(p的地址1500), 将x的地址
2200存放在变量 p 中。通过
变量p取出地址2200, 再按此
地址存取其中的内容, 就间接
的完成了对x的存取。
当p的内容改为2202时, 通过
变量p取出地址2202, 再按此
地址, 存取的就是变量y的内
容。
p就是指针变量
5
8
0
变量x
变量y
变量z
2200
2202
2204
2200
1500
变量p
2202
5
完整版课件
指针变量的定义
一般形式:
基类型名 *指针变量名
说明:
基类型名: 指针变量所指向的变量的类型名称
指针变量名: 所定义的指针变量的名称
*: 表示它后面的变量名是指针类型
功能:
(1)定义该指针变量名为指向基类型的指针变量,为
该变量分配存储单元, 其长度等于存储地址的字节数。
(2) 基类型确定用指针变量“间接”存取数据的存储单
元个数和存储形式。该变量只能指向基类型数据。
6
完整版课件
指针变量的初始化
用 =&变量名 来给指针变量赋初值。选项中的变量名必须
是已定义过的,其类型必须与基类型一致。表示将它对应的地
址值赋给所定义的指针变量。
例如: int x,p=&x;
int x,*p=&x;
int x;
float *p=&x;
可以用赋值语句给指针变量赋值:
float y, *py; py=&y;
7
完整版课件
指针变量的引用
引用指针变量的指针值与引用其它
类型的变量一样直接用它的变量名
引用指针变量所指向的变量时, 用“*指针变量名”
注意:
①指针变量的值与它所指向变量的值之间的差别
②指针变量只有正确赋值后才能通过它访问指向的变量。
x
int x;
p
p=&x;
&x
int *p;
*p
*p=5;
5
8
完整版课件
指针变量的运算
1. &: 取地址运算符, 取右边变量的地址
2. * : 指向运算符(间接访问运算符),
访问指针变量右边所指向的变量。
&a是变量a的地址
*p 是指针变量p指向的变量。
说明: “&”和“*”都是单目运算符, 它们的优先级
相同, 按自右而左方向结合。
9
完整版课件
如果已定义
float a, *p=&a ;
则 *p
是变量 a
&*p
是变量a的地址 p
&*p
等价于 p
而 &a
是变量a的地址 p
*&a
是p所指向的变量 a
*&a
等价于a
10
完整版课件

c语言指针完整ppt课件 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数82
  • 收藏数0 收藏
  • 顶次数0
  • 上传人相惜
  • 文件大小1.07 MB
  • 时间2021-06-21
最近更新