第2讲二级指针与二维数组课件.ppt
《第2讲二级指针与二维数组课件.ppt》由会员分享,可在线阅读,更多相关《第2讲二级指针与二维数组课件.ppt(17页珍藏版)》请在三一办公上搜索。
1、二级指针与二维数组,二级指针与二维数组,7.9 指向指针的指针,1.指向指针的指针的定义、赋值及引用如果一个指针变量存放的是另一个指针变量的地址,则称这个指针变量为指向指针的指针变量,简称为“二级指针”变量,其定义的一般格式如下:基类型名*(指针变量名);例如:int i=10;int*p=,7.9 指向指针的指针 1.指向指针的指针的定义、赋值及引,下列程序段的输出结果是()int*pp,*p,a=10,b=20;pp=A)10,20 B)20,10 C)20,20 D)10,10,下列程序段的输出结果是(),7.7 指向二维数组的指针,7.7.1 二维数组的地址C语言中,二维数组可以看成由
2、多个一维数组组成。例如:int a34=0,1,2,3,4,5,6,7,8,9,10,11;可以按下面的方式来看待数组a:二维数组a可以看成是由a0、a1、a2三个元素组成的一维数组,a是它的数组名。a0、a1和a2又都是一维数组,它们的数组名分别叫a0、a1和a2。由于数组名是指针,所以a0、a1和a2 为一级指针,它们的基类型是int。a是是由三个一级指针组成的数组。,a与a0的区别?a+1与a0+1区别?,7.7 指向二维数组的指针 7.7.1 二维数组的地址a与a,a+1跨过了二维数组的一行,所以,a、a+1和a+2称为行地址。相对于a0而言,a0+1只跨过了二维数组的一个元素,所以将
3、a0、a0+1、a0+2等称为列地址。,a+1跨过了二维数组的一行,所以,a、a+1和a+2称为行地,通过以上分析可以看出:(1)a+i是第i行的地址,所以,*(a+i)即为ai。这样,aij 等价于(*(a+i)j。(2)ai+j是第i行第j列元素的地址,所以,*(ai+j)等价于aij。将ai用*(a+i)替换得:*(*(a+i)+j)也等价于aij。上述等价关系总结如下:aij(*(a+i)j*(ai+j)*(*(a+i)+j),通过以上分析可以看出:,用二级指针访问二级数组,#include#define N 2#define M 3int main(void)static int a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 指针 二维 数组 课件

链接地址:https://www.31ppt.com/p-2108920.html