模仿二维数组,使用引用调用和引用返回,把函数代码补完整
时间: 2023-05-25 10:01:25 浏览: 55
A:
```C++
#include <iostream>
using namespace std;
// 引用调用
void printArray(int (&arr)[3][3]) {
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
cout << arr[i][j] << " ";
}
cout << endl;
}
}
// 引用返回
int (&getArray())[3][3] {
static int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
return arr;
}
int main() {
int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
printArray(arr);
int (&retArr)[3][3] = getArray();
retArr[0][0] = 0;
cout << "Printing returned array from function:" << endl;
printArray(retArr);
return 0;
}
```
在这个例子里,我们定义了两个函数,一个使用引用调用,另一个使用引用返回。printArray函数使用引用调用,它接受一个3x3的数组,并用嵌套的for循环在控制台上输出数组中的每一个元素。getArray函数使用引用返回,它返回一个指向3x3数组的引用。在这个函数内部,我们定义一个名为arr的静态3x3数组,并返回一个指向该数组的引用。
在main函数中,我们定义了一个名为arr的3x3数组,并向其中添加一些数字。我们然后调用了printArray函数,向其传递数组的引用。我们接着调用getArray函数,并将返回的引用存储在retArr变量中。最后,我们将retArr数组的第一个元素设置为0,并用printArray函数再次将整个数组输出到控制台上。