文档介绍:c语言程序设计快速入门第九章
《 C语言程序设计》
第9讲
第9章指针
n
目标要求
n
讲课提纲
n n
讲课内容
n
目标要求掌握指针的概念、定义。掌握指针变量的使用。掌握指针在函数中的运用。掌握指针的运算。掌握指针在数组中的运用。
课后作业
退出
9
3
4
:
第9章指针讲课提纲
p
基本概念
目标要求
p p
讲课提纲
p p
讲课内容
p
p
指针的定义和引用指针与数组指针与字符串指针与函数指向指针的指针和指针数组
小结课后作业
退出
课后作业
p
9
3
4
:
第9章指针
C程序设计中使用指针可以:
目标要求
n n
讲课提纲
n n
有效地处理数组,字符串有效地处理复杂的数据结构扩展函数的功能对内存实行动态分配
讲课内容
课后作业
退出
9
3
4
:
第9章指针
变量的地址
目标要求
基本概念
内存中每个字节有一个编号-----地址
内存 0 …...
变量的内容
程序中: int x=10;
float k;
编译或函数调用时为其分配内存单元
讲课提纲
2000
讲课内容
2001 2002 2003
2005
10
课后作业
变量是对程序中数据存储空间的抽象
…...
退出
9
3
4
:
n
指针与指针变量
n n
指针:一个数据或变量在内存中的首地址指针变量:专门存放变量地址的变量叫~
指针 4000
目标要求
X=100
整型变量x
讲课提纲
4001
100
…...
变量的内容
变量的地址
讲课内容
4002
4003 4004 4005 4006 4000 指针变量
变量p
p=&x
课后作业
…...
退出
9
3
4
:
第9章指针 指针的定义和引用
目标要求
讲课提纲
指针变量的定义指针变量的引用指针定义与引用的有关说明指针变量作为函数形参
讲课内容
课后作业
退出
9
3
4
:
第9章指针 指针变量的定义
目标要求
n
指针变量的定义
一般形式: 基本类型标识符*指针变量名列表;
C语言的基本类型名表示定义指针变量不是‘*’运算符例 char *p1; int *p2,*p3 ; 合法标识符
讲课提纲
讲课内容
课后作业
注意: 1、指针变量名是p1,p2 ,p3不是*p1,*p2,*p3 2、指针变量的类型是根据指针变量所指向单元中存放的值的类型来确定的 3、一个指针变量在内存中也要占用内存单元
退出
9
3
4
:
第9章指针 指针变量的引用
目标要求
指针变量必须先赋值,再使用但
例 int *p; p=4000;
不合法
讲课提纲
指针变量赋值有两种方法:
讲课内容
1、将某个已经定义了的普通变量的首地址赋给指针变量;
课后作业
2、调用C语言的动态内存分配函数或运算符为指针变量在内存的动态存储区找到一个可用区域。
退出
9
3
4
:
第9章指针
指向变量的指针指针变量的基本用法:
n
#include <> &amp;与*运算符 void main()
n
目标要求
含义
{ int ; //定义两个普通变量含义: 取变量的地址 x , y含义: 取指针所指向变量的内容单目运算符 n 两者关系:互为逆运算 int *p1, 单目运算符*p2; //定义两个指针变量优先级: 2 n 理解优先级: 2 讲课提纲 p1=&amp;x; x 结合性:自右向左结合性:自右向左*p1 x=100; printf("\n x=%d, *p1=%d ",x,*p1);
讲课内容
p2=&amp;y;
y
p2=200;
课后作业
p2 运行结果: x=100,*p1=100 y=200,*p2=200
printf("\n y=%d, *p2=%d ",y,*p2); }
退出
9
3
4
:
第9章指针 指向变量的指针
目标要求
讲课提纲
使用指针变量的一般步骤为: 1)先定义指针变量和同类型的普通变量,如:int *p,x; 2)使用取地址运算符“&amp;”将指针变量指向普通变量, 即:p=&amp;x; 3)此后,使用*p即可取代变量x 。
n
讲课内容
直接访问与间接访问
n
课后作业
n
直接访问:使用普通变量名(例如上例中的变量 x和y)来访问某个数据间接访问:使用指针变量来访问