电大C语言程序设计 第5章 指针ppt课件.ppt

电大C语言程序设计 第5章 指针ppt课件.ppt

ID:58732805

大小:122.00 KB

页数:45页

时间:2020-10-04

电大C语言程序设计 第5章 指针ppt课件.ppt_第1页
电大C语言程序设计 第5章 指针ppt课件.ppt_第2页
电大C语言程序设计 第5章 指针ppt课件.ppt_第3页
电大C语言程序设计 第5章 指针ppt课件.ppt_第4页
电大C语言程序设计 第5章 指针ppt课件.ppt_第5页
资源描述:

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

1、《C语言程序设计》计算机科学与技术专业本科第5章指针(一)教学内容1.指针的有关概念;2.指针的各种运算3.数组元素的指针访问方式4.数据存储空间的动态存储分配第5章指针(二)教学要求了解:指针的有关概念;理解:指针的各种运算符的含义,一维和二维元素的指针访问方式,动态存储分配与释放函数的含义;应用:会分析含有指针操作的程序。第5章指针5.1指针的概念指针就是内存单元的地址,指针类型定义以*标识。例:int*//整型指针char*//字符指针double*//double型指针第5章指针5.2指针变量1.定义格式<类型关键字>

2、*<指针变量名>[=<指针表达式>],…;例:int*ip;char*cptr;int*iptr1,iptr2;(1)建立指针包含指针变量定义和给指针赋初值(地址)。(2)&操作符可取变量地址,指针变量用于存放地址。第5章指针5.2指针变量例:int*iptr;inticount=18;iptr=&icount;//指针赋值该例等价与例:inticount=18;int*iptr=&icount;//指针的初始化第5章指针5.2指针变量2.格式举例(1)int*p;(2)inta=10,*pa=&a;(3)charc='a',

3、*cp=&c;(4)char*hp1="abc",*hp2=hp1;(5)void*p1=0,*p2=cp;(6)double*dp[5],*q;(7)int*ip[10]={0};(8)char*rp[3]={"front","middle","rear"};(9)intn=20,*np=&n,**pp=&np;第5章指针5.2指针变量2.格式举例intn=20,*np=&n,**pp=&np; n的类型为int,np的类型为int*,pp的类型为int**。20ppnpn第5章指针5.2指针变量3.几点说明(1)星号(*)

4、表示指针数据类型,但是每个*号只对其后的一个变量名起作用。int*p1,p2;//p1为int*类型,p2为int类型int*p1,*p2;//p1为int*类型,p2为int*类型(2)多个星号(*)表示多级指针数据类型。int*p1,**p2,***p3; //p1为int*类型,p2为int**类型,p3为int***类型第5章指针5.2指针变量3.几点说明(3)指针变量只能接受同类型的指针表达式的值,void*类型的指针可以接受任何类型的指针表达式的值。char*p=“string”,**q=&p; void*v1=p

5、,*v2=(void*)p; //void*类型指针可以接受任何类型的指针表达式的值(4)若要把指针表达式的值赋值给一个与之不同的指针类型的变量时,应该把这个值强制转换为被赋值变量所具有的指针类型。char*cp;inta[10]; cp=(char*)&a[0];第5章指针5.2指针变量3.几点说明(3)指针变量只能接受同类型的指针表达式的值,void*类型的指针可以接受任何类型的指针表达式的值。char*p=“string”,**q=&p; void*v1=p,*v2=(void*)p; //void*类型指针可以接受任何

6、类型的指针表达式的值(4)若要把指针表达式的值赋值给一个与之不同的指针类型的变量时,应该把这个值强制转换为被赋值变量所具有的指针类型。char*cp;inta[10]; cp=(char*)&a[0];第5章指针5.2指针变量3.几点说明(5)在printf()函数中,若输出指针表达式的值,则需要在格式字符串中使用p作为类型说明符。#include voidmain() {inta=30; char*cp; cp="output";printf("%p%p",&a,cp);printf("%d%s",

7、a,cp); }第5章指针5.2指针变量3.几点说明(6)在定义指针变量时,可以用const修饰。指向常量的指针:在指针定义语句的类型前加const,表指针指向的数据为常量。结论:constint*pi=&a;(或intconst*pi=&a;)中,*pi为常量,pi为变量,故*pi不能为左值。第5章指针5.2指针变量3.几点说明(6)在定义指针变量时,可以用const修饰。例如:constinta=78;constintb=28;intc=18;constint*pi=&a;//intconst*pi=&a;*pi=58;/

8、/错误,*pi为常量pi=&b;*pi=68;//错误,*pi为常量pi=&c;*pi=88;//错误,*pi为常量c=98;第5章指针5.2指针变量3.几点说明(6)在定义指针变量时,可以用const修饰。指针常量:在指针定义语句的指针名前加const,表指针本身为常量。结

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

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

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