C语言 第10章 指针课件.ppt

C语言 第10章 指针课件.ppt

ID:57056851

大小:289.50 KB

页数:45页

时间:2020-07-30

C语言 第10章  指针课件.ppt_第1页
C语言 第10章  指针课件.ppt_第2页
C语言 第10章  指针课件.ppt_第3页
C语言 第10章  指针课件.ppt_第4页
C语言 第10章  指针课件.ppt_第5页
资源描述:

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

1、指针地址与指针的概念指针与变量指针与数组指针与字符串指针与函数[**]返回指针值的函数指针数组和指向指针的指针动态内存分配有关指针的数据类型和指针运算小结1.地址和指针的概念地址:内存的编号,基本单位是字节。内存单元与内存单元的内容:数值被存储在连续的若干个内存单元中;数值的存取通过变量进行,编译时已经将变量名自动转换为内存地址,物理上的存取是通过地址进行的;直接访问:按变量地址直接存取变量值。间接访问:将变量i的地址存放在另一个变量ip中,通过ip访问变量i的值。inti=100;//连续4个字节变量i2000变量ip10020001.地址和指针的概念因此,

2、数值100送到变量中有两种方法:将100送到变量i标志的单元中;将100送到变量ip指向的单元中。[即:i标志的单元]指针:一个变量的地址称为该变量的“指针”。指针变量:专门用来存放另一个变量地址的变量称为指针变量;指针变量的值是指针。inti=100;//连续4个字节变量i2000变量ip1002000程序中*表示“指向”,*ip与i是同一回事i=100;*ip=100指针变量的定义语句:例如:int*pA;//指向整数变量的指针变量char*pCh;//指向字符变量的指针变量float*pF;//指向实数变量的指针变量在指针定义中,一个*只能表示一个指针。

3、例如:int*pA,pB;//pA是指针变量名,pB是一个普通的整形变量。int*pAa,*pBb;//pAa和pBb都是指针变量。定义指针变量指针运算符:&:取地址运算符;*:放在操作语句中的指针之前,称为间接访问运算符。如:inta,b=10,c;int*ipa,*ipb;ipa=&a;ipb=&b;c=*ipa;指针变量使用前必须初始化;注意变量与指针的区别;inta,*ipa;ipa=100;//错误*ipa=&a;//错误指针变量的值是可以改变的,即改变指针的指向;inta=10,b=20;int*ipa,*ipb;ipa=&a;ipb=&b;*ip

4、a=*ipb;ipa=ipb;*ipa=10;102020003000a:地址为2000b:地址为3000ipaipb指针变量的引用2.指针与变量注意指针运算的组合:inta=100,*ipa;ipa=&a;&*ipa?*&a?(*ipa)++?*(ipa++)?*ipa++?*(++ipa)?++*ipa?&*ipa=>&a=>ipa*&a=>*ipa=>a(*ipa)++=>a++*(ipa++)首先取出ipa指向的单元内容,然后ipa指向a的下一个类型单元*ipa++与*(ipa++)等效*(++ipa)首先ipa指向下一个类型单元,然后取出该类型单元的

5、内容++*pa=>++(*ipa)ipa指向的单元内容加1即:a=101100aipamain(){int*p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a

6、1;*p1=*p2;*p2=temp;}main(){inta,b;int*ip1,*ip2;scanf("%d,%d",&a,&b);ip1=&a;ip2=&b;if(a

7、nta,b;scanf("%d,%d",&a,&b);if(a

8、,但可以改变实参指针变量所指变量的值。

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

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

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