C语言程序设计教程课件第8章.ppt

C语言程序设计教程课件第8章.ppt

ID:51617245

大小:415.50 KB

页数:55页

时间:2020-03-26

C语言程序设计教程课件第8章.ppt_第1页
C语言程序设计教程课件第8章.ppt_第2页
C语言程序设计教程课件第8章.ppt_第3页
C语言程序设计教程课件第8章.ppt_第4页
C语言程序设计教程课件第8章.ppt_第5页
资源描述:

《C语言程序设计教程课件第8章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章指针C语言程序设计北京科技大学计算机系18.1指针和指针变量8.2指针与数组8.3指针与函数第8章指针2021/8/728.1指针和指针变量main(){floatx;inty;…}8.1.1指针和指针变量的概念变量的两个物理意义200020012002200320042005…xy变量的内容变量的地址2021/8/738.1指针和指针变量main(){inta,b,c;a=5;b=3;c=a+b;…}8.1.1指针和指针变量的概念200020012002200320042005abc5直接将整数5存入变量a3直接将整数3存入变量b8直接将变量a、b的值取出,相

2、加后存入变量c利用变量名存取数据的方式称为“直接存取”方式。2021/8/74C语言还提供了对内存单元的“间接存取”方式p20002001200220032004200520062007abc532004a和b相加的结果(*p=a+b)存放到变量p所指向的内存单元中去。此时c称为指针变量p的目标变量。p2004cp=&c8main(){inta=5,b=3,c,*p;p=&c;*p=a+b;…}8.1指针和指针变量8.1.1指针和指针变量的概念●变量的地址称为变量的指针●存放地址的变量称为指针变量2021/8/75main(){inta,*p=&a;floatx,*q

3、=&x;…}2000200120022003200420052006200720082009apxq20048.1指针和指针变量8.1.2指针变量的定义2000main(){inta,*p;floatx,*q;p=&a;q=&x;…}指针变量定义的形式指针变量初始化2021/8/76main(){inta,*p=&a;floatx,*q=&x;*p=5;printf("a+3=%d",*p+3);…}间接存取运算2000200120022003200420052006200720082009apxq20048.1指针和指针变量8.1.3指针的基本运算2000*p=

4、&a;×main(){inta,*p;floatx,*q;p=&a;q=&x;…}赋值运算52021/8/77方法1:目标变量值不变,改变指针变量的 指向求解。main(){inta,b,*p1,*p2,*p;p1=&a;p2=&b;scanf(″%d%d″,p1,p2);if(*p1<*p2){p=p1;p1=p2;p2=p;}printf(″a=%d,b=%d″,a,b);printf(″max=%d,min=%d″,*p1,*p2);}abp1p2p68a=6,b=8max=8,min=68.1指针和指针变量【例8.1】输入a、b两个整数, 使用指针变量

5、按大小顺序输出 这两个整数。2021/8/78方法2:利用指针变量直接改变目标变量的值 求解。main(){inta,b,t,*p1,*p2;p1=&a;p2=&b;scanf(″%d%d″,p1,p2);if(*p1<*p2){t=*p1;*p1=*p2;*p2=t;}printf(″a=%d,b=%d″,a,b);printf(″max=%d,min=%d″,*p1,*p2);}a、*p1b、*p2p1p2t68a=8,b=6max=8,min=68.1指针和指针变量6862021/8/79指针的加减运算8.1指针和指针变量8.1.3指针的基本运算main

6、(){inta[]={10,20,30,40,50},*p1,*p2;p1=p2=a;printf(″p1=%u,*p1=%d″,p1,*p1);p2+=3;printf(″p2=%u,*p2=%d″,p2,*p2);}P1=404,*p1=10P2=410,*p2=40404405406407408409410411412413a[0]a[1]a[2]a[3]a[4]3020104050p1p2指针加减运算要点:①只有当指针变量指向数组时指针的加减 运算才有意义。②指针变量可加减一个整型表达式。如:p1++、p2+3、p2--、p2-2。③指针的加减运算是以

7、基类型为单位(即sizeof(类型))的。④两个指针变量不能作加法运算,只有当 两个指针变量指向同一数组时,进行指针变 量相减才有实际意义。如:p2-p1。2021/8/710指针的关系运算8.1指针和指针变量8.1.3指针的基本运算404405406407408409410411412413a[0]a[1]a[2]a[3]a[4]3020104050p1p2①指向同一数组的两个指针可以进行关系 运算,表明它们所指向元素的相互位置关系。 如:p2>p1、p2==p1。②指针与一个整型数据进行比较是没有意 义的。③不同类型指针变量之间比较是非法的。④N

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

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

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