大学C语言基础自学课件第十章.ppt

大学C语言基础自学课件第十章.ppt

ID:58809042

大小:668.50 KB

页数:74页

时间:2020-10-01

大学C语言基础自学课件第十章.ppt_第1页
大学C语言基础自学课件第十章.ppt_第2页
大学C语言基础自学课件第十章.ppt_第3页
大学C语言基础自学课件第十章.ppt_第4页
大学C语言基础自学课件第十章.ppt_第5页
资源描述:

《大学C语言基础自学课件第十章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十章指针10.1地址与指针的概念10.2变量的指针和指向变量的指针变量10.3数组与指针10.4字符串与指针10.5指向函数的指针10.6返回指针值的函数10.7指针数组和指向指针的指针10.8有关指针的数据类型和指针运算的小结引言A、B、C三人欲住旅馆。A先到达旅馆,在服务台登记了房间,房间号是301。然后,A电话通知了B,但没有通知C.B和C该怎样找到A呢?B可以直接到301找到A。C可以从旅馆的服务台查询到A的房间号301,再找到A。10.1地址与指针的概念一、变量的地址计算机中,数据存储在内存中。内存

2、可划分若干个存储单元,每个单元可以存放8位二进制数,即1个字节。内存单元采用线性地址编码,每个单元具有唯一一个地址编码1、变量的地址:系统为变量分配的内存单元的地址。一个无符号整型数shortinta;floatb;a=3;b=5;2004a2010b352、变量的有关概念:存储内容:空间大小:空间位置:生存周期:数据值数据类型地址存储类别10.1地址与指针的概念二、变量的访问方式1、直接访问按变量地址存取变量值的方式称为“直接访问”方式2、间接访问定义一个变量p,存放a的地址,通过p访问a,这种方式称为“间接

3、访问”方式如何定义p?如何获取变量a的地址?如何通过p访问a?10.1地址与指针的概念指针变量是存放的地址的变量。三、指针变量P为指针变量,它存放整型变量a的首地址。我们称,指针变量p指向整型变量a。2004a2008b35p2004四、指针一个变量的地址称为该变量的指针。指针变量的值(即指针变量中存放的值)是地址(即指针)。请区分“指针”和“指针变量”这两个概念。10.2变量的指针和指向变量的指针变量1、定义指针变量的一般形式基类型*指针变量名int*p1,*p2;char*p3;10.2.1定义一个指针变量

4、所指向的变量的类型2、指针变量的赋值指针说明符★用变量的地址给指针变量赋值(求地址运算符&)★用相同基类型的指针变量赋值inta,b,*p1,*p2;p1=p2;注:变量的类型必须和指针变量的基类型相同。指针变量的值为地址。是个无符号整数。但不能直接将整型常量赋给指针变量inta,b;int*p;p=&a;floata;int*pointer_1;pointer_1=&a;10.2变量的指针和指向变量的指针变量10.2.1定义一个指针变量注意:定义指针变量时的前面“*”,表示该变量的类型为指针型变量。(2)在定

5、义指针变量时必须指定基类型。例:float*pointer_1;指针变量名是pointer_1,而不是*pointer_1。(3)对指针变量不赋值,则它的值是随机的。(4)赋空值,pointer_1=NULL;pointer_1=0;3、指针变量的初始化方法(1)赋空值(2)赋已定义的变量的地址10.2变量的指针和指向变量的指针变量1、两个有关的运算符:&、*10.2.2指针变量的引用形式:&任意变量*指针变量取地址运算符指针运算符含义:&a表示变量a所占据的内存空间的首地址;*p表示指针变量p所指向的内存中的

6、数据。①将指针变量指向被访问的变量应用:通过指针变量访问所指变量10.2变量的指针和指向变量的指针变量10.2.2指针变量的引用如:inta=5,*p,b;p=&a;②访问所指变量取内容:b=*p;printf(“%d”,*p);存内容:例10-1通过指针变量访问整型变量。main(){inta,b; int*p1,*p2;a=100;b=10;p1=&a;p2=&b;printf(“%d,%d”,a,b); printf(“%d,%d”,*p1,*p2); }*p=100;10.2变量的指针和指向

7、变量的指针变量2、运算规则10.2.2指针变量的引用&、*优先级相同,且右结合。※与++、--、!等单目运算符优先级相同※高于算术运算符*、/、%如果已执行了语句pointer_1=&a;&*pointer_1的含义是什么?&*pointer_1与&a相同*&a的含义是什么?*&a与a相同*&a和*pointer_1的作用是一样的,它们都等价于变量a。(*pointer_1)++的作用?等价于变量a++。*pointer_1++?10.2变量的指针和指向变量的指针变量例10-2输入a和b两个整数,按先大后小的顺

8、序输出a和b。10.2.2指针变量的引用运行情况如下:5,9↙a=5,b=9max=9,min=5当输入a=5,b=9时,由于a<b,将p1和p2交换。交换前的情况见图(a),交换后见图(b)。#includevoidmain() {int*p1,*p2,*p,a,b; scanf(“%d,%d”,&a,&b);p1=&a;p2=&b;if(a

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。