《C语言指针讲解》PPT课件

《C语言指针讲解》PPT课件

ID:45086229

大小:282.00 KB

页数:62页

时间:2019-11-09

《C语言指针讲解》PPT课件_第1页
《C语言指针讲解》PPT课件_第2页
《C语言指针讲解》PPT课件_第3页
《C语言指针讲解》PPT课件_第4页
《C语言指针讲解》PPT课件_第5页
资源描述:

《《C语言指针讲解》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章指针8.1地址和指针的概念例:inti,j;i=3;2000j=4;200133003301printf(“%d”,i);根据变量名与地址对应关系,找到变量i的地址,然后从2000开始的两个字节中取出数据(3)输出;scanf(“%d”,&i);把从键盘输入的值送到地址为2000开始的整型存储单元中;3....48.1地址和指针的概念通过变量名取值或存值的方式叫直接存取方式;间接存取方式:先把变量(i)的地址存入另一个变量,然后通过这个存放地址的新变量来存取变量(i)的值;在C语言中:指针:就是内存地址;指针

2、变量:就是存放内存地址的变量;8.2指针和指针变量变量的指针就是变量的地址,存放变量地址的变量称为指针变量。1、指针变量的定义:类型标识符*指针变量名;例:int*p,k=5;p=&k;pk或表示为:kp注意:指针变量定义中的“类型标识符”表示指针变量所指的变量的数据类型。由此可见,指针变量并不是可以指向任何类型变量。例:char*q;float*t;&k558.2指针和指针变量2、指针变量的引用1)指针变量的引用有三种情况(1)给指针变量赋值。如:p=&a;(2)引用指针变量。如:printf(“%o”,p);(

3、3)引用指针变量指向的变量形式:*指针变量名如:已有p=&a;则*p就代表变量a8.2指针和指针变量例:main(){intx,y;int*p,*q;x=4;y=5;p=&x;q=&y;q=p;*p=y;printf(“%d,%d,%d,%d”,x,y,*p,*q);}(解释程序执行过程)8.2指针和指针变量2)&和*&是取地址运算符*是指针运算符它们都是单目运算符,优先级与其它单目运算符同级,结合性与其它单目运算符相同自右向左;例:设有变量a,指针变量p,且p=&a;则*&a&*a*&p&*p分别表示什么意思?8

4、.2指针和指针变量例:输入a和b两个整数,按先大后小的顺序输出a和b。(借助指针实现)main(){int*p1,*p2,*p,a,b,c;scanf(“%d,%d”,&a,&b);p1=&a;p2=&b;if(a

5、数时传值;数组名作为参数时传地址;指针变量名作为参数也传地址。例:输入a和b两个整数,按先大后小的顺序输出a和b。file1:voids(intp,intq){intt;t=p;p=q;q=t;}main(){inta,b;scanf(“%d,%d”,&a,&b);if(a

6、,b;scanf(“%d,%d”,&a,&b);if(a

7、素的指针1、指向数组元素的指针例:pa[0]inta[10];*p;a[1]p=&a[0];注意:C语言规定数组名代表数组的首地址;所以p=&a[0];与p=a;等价………8.3数组与指针-指针的运算………52、指针的运算a[0]例:p=&a[8];*p=5;pa[8]a[9]C语言规定:如指针变量p已指向数组中的一个元素,则p+1指向同一数组中的下一个元素;如:p=&a[4];则*p代表a[4]p+1指向a[5]*(p+1)代表a[5]p+2指向a[6]*(p+2)代表a[6]p-1指向a[3]*(p-1)代表a

8、[3]p-2指向a[2]*(p-2)代表a[2]8.3数组与指针-指针的运算可见:指向数组的指针变量可以与整数进行算术运算:指针变量+(-)n表示当前指针变量指向元素后(前)的第n个数组元素;++(--)指针变量表示指针变量指向下一个(上一个)数组元素,再引用;指针变量++(--)表示先引用然后指针变量指向下一个(上一个)数组元素;因此:如果有:inta[1

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

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

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