数组如何作为函数参数 传参
时间: 2024-09-12 16:06:44 浏览: 42
在编程中,数组可以作为一种有效的数据结构作为函数参数传递。当你将数组作为参数传递给函数时,有几个常见的方法:
1. **引用传递**(Pass by reference):许多编程语言允许通过引用或指针传递数组,这意味着函数会直接操作输入数组,而不是复制一份副本。例如,在C++中,你可以这样做:
```cpp
void printArray(int arr[], int size) {
// 函数内部可以直接修改arr
for (int i = 0; i < size; i++) {
cout << arr[i] << " ";
}
}
int main() {
int numbers[] = {1, 2, 3, 4, 5};
printArray(numbers, sizeof(numbers) / sizeof(numbers[0]));
return 0;
}
```
在这个例子中,`printArray`函数改变数组的内容,主函数里可以看到变化。
2. **值传递**(Pass by value):有些语言默认按值传递,这时函数收到的是数组的一个拷贝。这意味着对函数内的数组进行的操作不会影响到原始数组。比如在Python中:
```python
def modify_array(arr):
arr[0] = 0
my_list = [1, 2, 3]
modify_array(my_list.copy()) # 修改copy,不影响原列表
print(my_list) # 输出 [1, 2, 3]
```
阅读全文