码迷,mamicode.com
首页 > 编程语言 > 详细

C++之指针指向二维数组

时间:2015-07-07 16:51:12      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:c++基础

一维指针通常用指针表示,其指向的地址是数组第一元素所在的内存地址,如下

int ary[4][5];
int(*aryp)[5] = ary;

那么ary[4]相当于int(*aryp),以下理解如此,但参数传递需要知道实参所在
的一维个数,所以传递的时候应该传递多一个参数,子数组的引用可以理解
为(*p),那么取元素就是(*p)[i],如下

void printVal(int(*aryp)[5],int irowCount){
    for (int(*p)[5] = aryp; p != aryp + irowCount;p++)
    {
        for (size_t i = 0; i < 5; i++)
        {
            cout << (*p)[i] << endl;
        }
    }
}

缺点就是:传递的时候还需要传递1维数组的个数。但扩展性强。
同样三维数组可以使用指向指针的指针的数组。通常很少用。

版权声明:本文为博主原创文章,未经博主允许不得转载。

C++之指针指向二维数组

标签:c++基础

原文地址:http://blog.csdn.net/qq285016127/article/details/46738563

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!