直接看代码和注释:
#include <iostream>
using namespace std;
void f(int (*arr)[5]){cout<
void f2(int arr[][5]){cout<
void f3(int **arr){cout<
int main()
{
....
....int (*arr1)[5] = new int[10][5]; // 数组指针与二维动态数组
....arr1[3][3] = 44;
....f(arr1);
....f2(arr1);
....int *arr2 = new int[5*10];
....
....int **arr = new int*[10]; // 二维指针与动态指针数组(as rows)
....for (int count = 0; count < 10; ++count)
........arr[count] = new int[5]; // as columns
....arr[3][3] = 55;
....
....f3(arr);
....for (count = 0; count < 10; ++count)
........delete[] arr[count];
....delete[] arr; // this needs to be done last
....
....
....cout<
....system("pause");
....return 0;
}
/*
44
44
55
*/
-End-