数组引用传递多维数组
时间: 2024-06-03 22:04:01 浏览: 13
数组引用传递是指将数组作为参数传递给函数时,传递的是数组的引用而不是数组的副本。这样可以避免在函数调用过程中产生额外的内存开销,同时也可以修改原始数组的值。
对于一维数组的引用传递,可以使用以下方式定义函数参数:
```cpp
void modifyArray(int arr[], int size) {
// 修改数组的值
for (int i = 0; i < size; i++) {
arr[i] = arr[i] * 2;
}
}
int main() {
int myArray[] = {1, 2, 3, 4, 5};
int size = sizeof(myArray) / sizeof(myArray);
modifyArray(myArray, size);
// 输出修改后的数组
for (int i = 0; i < size; i++) {
cout << myArray[i] << " ";
}
return 0;
}
```
对于多维数组的引用传递,可以使用以下方式定义函数参数:
```cpp
void modifyMatrix(int matrix[][3], int rows) {
// 修改矩阵的值
for (int i = 0; i < rows; i++) {
for (int j = 0; j < 3; j++) {
matrix[i][j] = matrix[i][j] * 2;
}
}
}
int main() {
int myMatrix[] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int rows = sizeof(myMatrix) / sizeof(myMatrix);
modifyMatrix(myMatrix, rows);
// 输出修改后的矩阵
for (int i = 0; i < rows; i++) {
for (int j = 0; j < 3; j++) {
cout << myMatrix[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)