c++将二维数组作为函数参数怎么写,我要传一个行,列随机的二维数组

如题所述

楼上两位说的都有道理。

但是楼主,我专门给你实践了一个代码。

在实现过程中有几点要注意:

1、二级指针作为二维数组时空间分配的方法

2、空间释放的方法

3、头文件的导入

上代码:(求采纳~~~~~不明白的可以追问我)

1 #include <iostream>
2 #include <cstdlib>
3 #include <iomanip>
4 using namespace std;
5
6 void test(int** arr,int row,int col){
7 int c=0;
8 for(int i =0; i<row;i++)
9 for(int j =0; j<col;j++)
10 arr[i][j] = c++;
11 }
12
13 int main(void){
14 srand(time(0));
15 int row = rand()%10+1;
16 int col = rand()%10+1;
17 cout << row << "行, " << col << "列." << endl;
18 int** arr = new int*[row];
19 for(int i = 0; i < row; i++)
20 arr[i] = new int[col];
21 test(arr,row,col);
22 for(int i = 0; i<row;i++){
23 for(int j = 0; j<col;j++)
24 cout << setfill(' ') << setw(4) << right << arr[i][j];
25 cout << endl;
26 }
27 for(int i = 0; i < row; i++)
28 delete[] arr[i];
29 delete[] arr;
30 return 0;
31 }

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-10
如果是用二级指针,new出来的二维数组,就传二级指针好了;
如果是直接定义的数组,就当做一维数组传首地址
第2个回答  2013-04-10
用二级指针
arr[2][2];
bool func(parr**)
{
parr[0][0] = 0;
.....
}