为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

数组指针、指针数组以及二位数组

2012-09-04 4页 pdf 93KB 16阅读

用户头像

is_586861

暂无简介

举报
数组指针、指针数组以及二位数组 数组指针、指针数组以及二位数组 学习各种外挂制作技术,马上去百度搜索 """"魔鬼作坊"""" 点击第一个站进入、快 速成为做挂达人。 int *p[3]与 int (*p)[3]的区别 *p[3]这个是一个指针数组,它所代表的意思是数组中的每一个元素都是一个指针变量, 而(*p)[3],p是一个指针变量,表示指向一个含有 3个整型元素的一维数组。 View Code int i,j; int a[2][3]={3,4,5,6,7,8}; // int *p[3] ; //表示一个数组,数组中的元素是指针类型,...
数组指针、指针数组以及二位数组
数组指针、指针数组以及二位数组 学习各种外挂制作技术,马上去百度搜索 """"魔鬼作坊"""" 点击第一个站进入、快 速成为做挂达人。 int *p[3]与 int (*p)[3]的区别 *p[3]这个是一个指针数组,它所代表的意思是数组中的每一个元素都是一个指针变量, 而(*p)[3],p是一个指针变量,表示指向一个含有 3个整型元素的一维数组。 View Code int i,j; int a[2][3]={3,4,5,6,7,8}; // int *p[3] ; //表示一个数组,数组中的元素是指针类型,一共有三个元素 int (*q)[3]; //是一个指针,指向一个含有三个 int型的数组(q+1)会跳三个数组元素 //把第一行三个元素地址存放在 p指针数组中 for( i=0;i<3;++i) p[i]=&a[0][i]; //输出指针数组中地址所对应值 for( j=0;j<3;++j) cout《 *p[j]《“ ”;//输出结果为:3,4,5 cout《endl; q=a;//把数组 a开始地址赋给指向一维数组 q; for(i=0;i<2;i++) for(j=0;j<3;j++) cout《 *(*(q+i)+j)《“ ”; //输出数组中元素 system(“pause”); ps:2012-5-15,参考《c++ primer》 严格的将,c++中没有多维数组,通常所指的多维数组其实就是数组的数组,比如 int arry[3][4];表示一个长度为 3的数组,数组中的每个元素是一个长度为 4的数组。在使用多 维数组时,记住这一点有利于理解其应用。 下面来讲讲多维数组与指针的关系。与普通数组一样,使用多维数组时,实际上将其自动转 换为指向该数组第一个元素的指针。也就是说,数组的名字是一个指向该数组中第一个元素 的指针,在一维数组中,arry==&arry[0],这两个地址是一样的。在二维数组中,数组名称指 向第一个元素,第一个元素是一个长度为 4的数组。我们定义一个指向长度为 4的数组的指 针 int (*p)[4],然后可以将二维数组的首地址赋值给它,p=arry.这样是可以进行赋值的。 这里同样满足 arry==&arry[0]. 知道了二维数组名字与指针的关系,那么我们在进行二维数组传参的时候就会好理解很 多,以前二维数组传参是一直让人头疼的问题。这里我们还是将二维数组名字作为实参来传 递,在接受函数的形参中,我们只需要定义一个指向具体长度为数组的指针即可,比如我们 这里使用 int (*p)[4]来接受 arry这样的参数。下面给出代码实例。 View Code #include #include using namespace std; //数组名字是一个指向数组首元素的指针,这里我们定义一个指向数组的指针来接受 arry //r表示二位数组的行数,c表示二维数组的列数。 void PrintArry(int (*arry)[4],int r,int c) { for(int i=0;i答案
是有的。考虑 到二维数组在内存中占据连续的空间这一个特性,我们可以用以为数组来表达二位数组。将 上述 PrintArry方法进行改写,改写结果如下: View Code #include #include using namespace std; //传入数组的指针,二维数组的行数与列数 void PrintArry2(int *arry,int r,int c) { for(int i=0;i
/
本文档为【数组指针、指针数组以及二位数组】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索