C++中如何传递数组给函数并修改它的内容?
时间: 2024-12-10 20:35:10 浏览: 18
在C++中,由于数组名本质上是地址,所以可以直接将其作为函数参数传递,函数内部就可以访问和修改数组的内容。像之前提到的`doubleArrayElements`函数,我们就是直接接收一个整型数组`arr`作为参数。当我们在函数内部操作数组时,实际上是操作了原始数组。
例如,如果你想在`doubleArrayElements`函数中修改数组,就像这样:
```cpp
void doubleArrayElements(int* arr, int size) {
for (int i = 0; i < size; ++i) {
arr[i] *= 2; // 直接对数组元素进行修改
}
}
```
这里的`*arr`代表的是数组的第一个元素,然后通过索引逐个修改。
在`main`函数中,只需传入你要操作的数组和其大小即可:
```cpp
int numbers[] = {1, 2, 3, 4, 5};
doubleArrayElements(&numbers, sizeof(numbers) / sizeof(numbers[0]));
```
`&numbers`获取数组的首地址,函数就可以对整个数组进行操作了。
阅读全文