参数传递之传递多维数组

//参数传递之传递多维数组(C++中没有真正的多维数组,即数组的数组)
void print(int(*matrix)[10], int rowSize){
    for (int i = 0; i < rowSize; i++){
        for (int j = 0; j < 10; j++)    {
            /*std::cout << matrix[i][j]<<", ";*/
            std::cout << *(*(matrix+i) + j)<<", ";//*:符号代表解引用,[] :优先级高*
        }
        std::cout <<std::endl;
    }
}
//等价定义
//void print(int matrix[][10], int rowSize){
//    for (int i = 0; i < rowSize; i++){
//        for (int j = 0; j < 10; j++)    {
//            /*std::cout << matrix[i][j]<<", ";*/
//            std::cout << *(*(matrix + i) + j) << ", ";//*:符号代表解引用,[] :优先级高*
//        }
//        std::cout << std::endl;
//    }
//}

int main()
{
    //参数传递之传递多维数组(C++中没有真正的多维数组,即数组的数组)
    int arr1[2][10] = { { 1, 2, 3, 4, 5 }, { 10, 20, 30, 40, 50 } };
    print(arr1, 2);
}

 

posted @ 2016-02-28 17:55  ARabbit  阅读(610)  评论(0编辑  收藏  举报