C++怎么将二维数组作为函数的形参
时间: 2024-09-10 15:05:09 浏览: 52
在C++中,你可以通过引用或指针的方式来传递二维数组作为函数的形参,因为直接传递二维数组会复制整个数组,这通常不是你想要的,特别是当数组很大时。以下是两种常见的方式:
1. **引用传递**:
```cpp
void processArray(int(&array)[rows][columns]) {
// 在函数内部可以直接操作array
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < columns; ++j) {
// 对数组元素进行操作
}
}
}
// 调用函数
int myArray[5][5];
processArray(myArray);
```
在这里,`&array`是一个指向数组首元素的指针,所以函数可以修改原数组。
2. **指针传递**:
```cpp
void processArray(int(*array)[columns], int rows) {
// 使用指针遍历数组
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < columns; ++j) {
// 对*(array + i*columns + j)进行操作
}
}
}
// 调用函数
int myArray[5][5];
processArray(myArray, 5);
```
这里,`array`是一个指向整型数组的一维指针,每个元素表示行的开始位置。
阅读全文