指针与动态内存管理ppt课件.pptx

指针与动态内存管理ppt课件.pptx

ID:59470711

大小:171.01 KB

页数:54页

时间:2020-09-14

指针与动态内存管理ppt课件.pptx_第1页
指针与动态内存管理ppt课件.pptx_第2页
指针与动态内存管理ppt课件.pptx_第3页
指针与动态内存管理ppt课件.pptx_第4页
指针与动态内存管理ppt课件.pptx_第5页
资源描述:

《指针与动态内存管理ppt课件.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第02章指针与动态内存分配-2-本章内容安排指针与动态内存分配函数及参数传递雇员管理系统版本1(数组)雇员管理系统版本2(动态内存分配)-3-1、指针变量地址的概念定义一个变量,程序执行后数据会加载到内存中的某个地方,计算机如何找到这个地方?地址:内存按字节编号,0、1、2……存储单元的编号就是该单元的地址,它表明了该存储单元在内存中的位置系统根据变量的地址而不是任何别的东西寻找某个变量。变量的地址:变量占用的首个存储单元的地址-4-变量的地址变量的地址变量a占用的是内存的2000~2003四个单元,变量a的地址为20

2、00。源代码中写a=5;我们可以理解为将5赋给变量a;而计算机在执行程序时,只是将5送入2000~2003四个存储单元中。2000…02…2002inta;-5-指针变量inta=5;int*pa;pa=&a;指针变量pa指向变量a-6-2、指针变量的使用要点引用前一定要初始化inta=5;int*pa;//pa=&a;一定要初始化*pa=10;-7-指针变量的使用要点数据类型要匹配指针变量的数据类型,必须与其所指向的变量的数据类型一致。不可以在不同类型指针变量之间赋值。指针变量中存储的是一个表示地址的整数值,但不可以

3、将一个整数值直接赋给指针变量。-8-指针变量的使用要点void指针及强制类型转换inta=7,*pa=&a;doubleb=2.5,*pb=&b;void*pv;pv=pa;cout<<*(int*)pv<

4、inta[10];intk;for(k=0;k<10;k++){*(a+k)=k;}-11-指针与一维数组通过指针变量访问数组元素inta[10];intk,*p;p=a;for(k=0;k<10;k++){*(p+k)=k;}或p=&a[0];或者p[k]=k;-12-指针与一维数组指针变量和数组名的使用区别a[k]p[k]*(a+k)*(p+k)for(k=0;k<10;k++){*p++=k;}a不能被改变X*a++=k;-13-4、指向数组的指针数据类型(*指针变量名)[常量表达式]inta[2][3]={……

5、};int(*p)[3];p=a;for(inti=0;i<2;i++){for(intj=0;j<3;j++){p[i][j]=……}}指向数组的指针常用于指向二维数组-14-指向数组的指针访问数组元素的其它方式a[i][j]p[i][j]*(a[i]+j)*(p[i]+j)*(*(a+i)+j)*(*(p+i)+j)-15-5、指针数组数据类型*变量名[常量表达式]inta,b,c,d;int*p[4]={&a,&b,&c,&d};intaa[2][3];int(*pa)[3];pa=aa;定义含4个元素的指针数组

6、,p只是数组名pa是指针变量,指向含3个int元素的一维数组-16-6、二级指针指向指针的指针inta=a;int*pa=&a;int**ppa=&pa;a=5;*pa=5;**ppa=5;-17-二级指针示例二级指针经常与指针数组配合使用char**p;char*name[]={“hello”,“good”,“world”,“bye”,“”};p=name;while(**p!=NULL){cout<<*p++<

7、配开辟某种类型的单个空间int*p;if((p=newint)==NULL){cout<<“error”<

8、int元素空间不能初始化删除多个元素,[]必不可少绝对不能使用*p++=6;-21-动态内存分配注意事项避免内存泄漏int*pa,*pb;pa=newint(5);pb=newint(10);pa=pb;……初值为5的空间无法再访问-22-动态内存分配注意事项普通变量不能通过delete释放inta=5;int*pa=&a;……d

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

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

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