数组传参

#include <iostream>

using namespace std;
void trs_array( char (*arr)[2][2] );




int main()
{
    char array[2][2][2] = {'1','2','3','4','1','2','3','4'};
    trs_array(array);
    
    return 0;
}


void trs_array( char (*arr)[2][2] )
{
    for(int i = 0;i < 2 ; i++)
    {
        for(int j = 0;j < 2 ; j++)
            for(int z = 0; z < 2;z++)
                cout << *(*(*(arr+i)+j)+z)<< endl;
    }
}

在声明函数原型时,编译器必须知道多维数组第二个及以后下表的长度,才可以对数组进行求值,而一维数组不需要

 

例如:

 指针数组:char *p[4] = {"123","123","3214","324"};

 数组指针(指向数组的指针):  char temp[4] ={1,2,3,4}

              char *(p)[4] =  &temp;      //指向含4个数据的数组的首地址

 

posted @ 2017-12-26 17:08  peng_blog  阅读(1325)  评论(0编辑  收藏  举报