- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第06章 节 指针与引用《C++程序设计基础教程》课件.pptx
第6章 指针与引用主讲:李政伟第6章 指针6.1 指针的定义与初始化6.2 指针的使用6.3 指针与数组6.4 指针与字符串6.5 指针与函数6.6 引用6.7 应用实例6.1 指针的定义与初始化6.1 指针的定义与初始化指针:变量的地址。指针变量:专门用来存放另一变量的地址(指针)的变量。理解:一种特殊的变量, 用来指向另一变量。其存放内容是另一变量的地址。6.1.1 指针的定义一般形式基类型 * 指针变量名;int *p1, *p2;基类型:所指向变量的类型,而非指针本身数据值的类型。指针本身类型是unsigned long int。指针变量名是p1,而不是*p1,即“*”只表示该变量是指针变量。6.2 指针的使用[例6.3] 输入a和b两个数,按先大后小的顺序输出,a和b的值不变。main(){ int a,b,*p1,*p2,*p; cinab; p1=a; p2=b; if(ab) { p=p1; p1=p2; p2=p; } couta=“a“,b=b; coutMax=“*p1, Min=*p2; } 输出:a=10,b=20Max=20,Min=10指针变量作函数参数[例6.4] 用函数实现两个变量的交换void Swap(int *p1,int *p2){ int *t; t=p1; p1=p2; p2=t; }main(){ int a=5,b=9; Swap(a,b); couta=a,b=b; }int t; t=*p1; *p1=*p2; *p2=t; Swap(a,b); 输出: a=5,b=9 6.3 指针与数组a[0]a[1]p↙a[2]a[3]q↙a[4]6.3.1 指针与一维数组数组元素的指针:数组元素的地址。如:int a[5]; int *p,*q; p=a[0]; q=a[2]; *p=5; *q=8; 5a[0]8a[2] 6.3 指针与数组aa[0]p+1a[1]pa[2]a[3]a[4]规定:数组名代表数组的首地址,即第一个元素a[0]的地址。 a ≌ a[0]。若:p=a; ≌ p=a[0]; 则:p+1 ≌ a[1] *(p+1) ≌ a[1] p+i ≌ a[i] *(p+i) ≌ a[i]p+1指向数组的下一个元素 a[i] ≌ *(a+i)p[i] ≌ *(p+i) 6.3 指针与数组引用一个数组元素 1) 下标法,如a[i];2) 指针法,如*(a+i)或*(p+i)。3) 用指针变量指向数组元素例6.6 输出数组中的全部元素(1) 下标法(2) 指针法 将a[i]替换成*(a+i)int main( ) { int a[10],i; for(i=0;i10;i++) cina[i];//引用数组元素a[i] for(i=0;i10;i++) cout ;}a[i]例6.6 输出数组中的全部元素(3) 用指针变量指向数组元素int main( ) { int a[10]; int *p; for(p=a; pa+10; p++) cin*p;//输入a[0]~a[9] for(p=a;pa+10;p++) cout*p ; //p先后指向a[0]~a[9] } 例6.6 输出数组中的全部元素 若p指向a[i]),则: (1) *p++作用: 先得到*p,即a[i],然后p自加1。 for(p=a;pa+10;p++) cout*p;for(p=a;pa+10;) cout*p++; *++p(2) (*p)++ 作用:所指元素加1,即a[i]++注: 元素值加1,而非指针值加1。≌*(p++)≌先p自加1,再*运算,得a[i+1]。6.3.2 用指针变量作函数参数接收数组地址例6.7 将10个整数按由小到大排序int main( ) {void select_sort(int *p,int n); int a[10],i;for(i=0;i10;i++) cina[i];select_sort(a,10); //数组名作实参coutthe sorted array:endl;for(i=0;i10;i++) couta[i] ;}void select_sort(int *p,int n) { int i,j,k,t; for(i=0;in-1;i++) { k=i; for(j=i+1;jn;j++) if(*(p+j)*(p+k)) k=j; t=*(p+k); *(p+k)=*(p+i); *(p+i)=t; }}6.3.2 指针与二维数组1. 多维数组元素的地址int a[3][4]={{1,3,5,7},{9,11,13,15},{17,19,21,23}};6.3.2
您可能关注的文档
- 第04章 节 linux学习课件 文件目录操作.ppt
- 第04章 节 PowerPoint 计算机应用基础课件.ppt
- 第04章 节 从autoboxing、unboxing认识对象 Java JDK 6 .ppt
- 第04章 节 光学系统中的光束限制 工程光学课件.ppt
- 第04章 节 函数 《C++程序设计基础教程》课件.pptx
- 第04章 节 分解方法和单口网络 电路分析基础 .ppt
- 第04章 节 刚体的转动 4-1 刚体的定轴转动 马文蔚《物理学》 课件PPT.ppt
- 第04章 节 刚体的转动 4-4 力矩的功 刚体绕定轴转动的动能定理 马文蔚《物理学》 课件PPT.ppt
- 第04章 节 单片机程序设计基础-01 《单片机原理与应用系统设计》电子课件-第1稿.ppt
- 第04章 节 噬菌体 医科大学.ppt
- 第06章 节 科技文书 财经实用写作课件.pptx
- 第06章 节 静电场中的导体和电介质 6-3 电位移 有介质时的高斯定理 马文蔚《物理学》 课件PPT.ppt
- 第06章 节 (vi编译器) linux学习课件.ppt
- 第06章 节 -木材的物理性质 木质资源材料学.ppt
- 第06章 节 执行器 化工自动化及仪表(工艺类专业适用) .ppt
- 第06章 节 键盘LED与LCD.ppt
- 第06章 颗粒物污染控制技术 知识1 大气污染控制工程课件.ppt
- 第06章 颗粒物污染控制技术 知识3 大气污染控制工程课件.ppt
- 第06章 颗粒物污染控制技术 知识4 大气污染控制工程课件.ppt
- 第06章 颗粒物污染控制技术 知识5 大气污染控制工程课件.ppt
文档评论(0)