c语言函数参数为数组
时间: 2024-09-18 20:06:43 浏览: 45
在C语言中,函数参数可以是数组名,而不是数组的具体元素。当你把数组名传递给函数时,实际上是将数组的首地址(即指向第一个元素的指针)作为实参传递。这种方式被称为“按值传递数组引用”(passing an array by reference)。这样做可以让函数直接操作数组的内容,而不仅仅是改变副本。
例如:
```c
void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
}
int main() {
int numbers[5] = {1, 2, 3, 4, 5};
printArray(numbers, sizeof(numbers) / sizeof(numbers[0])); // 通过数组名传递
return 0;
}
```
在这个例子中,`printArray` 函数接收一个整数数组 `arr` 和它的大小 `size`。调用 `printArray(numbers, ...)` 时,实际上是将 `numbers` 的首地址传递给了函数,所以函数可以直接修改 `arr` 中的元素。
阅读全文