C++将数组作为函数参数
时间: 2024-09-18 15:11:57 浏览: 40
在C++中,当将数组作为函数参数传递时,有两种常见的处理方式:
1. **引用传递**(Pass by Reference):这是最常见的做法,通过将数组名作为引用传递给函数。这样函数内部可以直接操作数组元素,而不会创建新的副本。例如:
```cpp
void printArray(int arr[], int size) {
for (int i = 0; i < size; ++i)
cout << arr[i] << " ";
}
int main() {
int numbers[] = {1, 2, 3, 4, 5};
printArray(numbers, 5); // 数组以引用形式传入
return 0;
}
```
2. **指针传递**(Pass by Pointer):还可以使用指针来间接访问数组元素,但这种方式需要确保函数内部对指针的操作正确无误,以避免数组越界等问题。示例:
```cpp
void printArray(int* arr, int size) {
for (int i = 0; i < size; ++i)
cout << arr[i] << " ";
}
int main() {
int numbers[] = {1, 2, 3, 4, 5};
printArray(&numbers[0], 5); // 数组地址以指针形式传入
return 0;
}
```
相关问题
指针数组作为函数参数
指针数组作为函数参数,是将数组的地址作为参数传递给函数,可以在函数内部对数组进行修改,从而达到修改原数组的目的。指针数组作为函数参数的语法格式如下:
```C++
void func(int *arr[], int size)
{
// do something
}
```
其中,`arr`是一个指向整型指针的指针,`size`是数组的大小。在函数内部可以通过`arr[i]`来访问数组元素。需要注意的是,在函数内部修改数组元素的值会影响原数组。
阅读全文