C语言函数中数组的值传递
时间: 2024-05-16 20:08:27 浏览: 93
C语言中,数组作为函数参数传递时,实际上传递的是数组的地址,也就是指针。因此,对于数组的修改会影响到原数组。数组作为函数参数传递有以下三种方法:
1.数组名作为形参,不需要指明数组的大小,但是需要在函数内部通过sizeof()函数来获取数组大小。
2.指定数组大小,将数组作为形参传递。
3.使用指针作为形参,需要在函数内部通过指针操作来访问数组元素。
<<示例代码>>
```c
#include <stdio.h>
//方法一:数组名作为形参
void printArray1(int arr[], int len){
for(int i=0; i<len; i++){
printf("%d ", arr[i]);
}
printf("\n");
}
//方法二:指定数组大小
void printArray2(int arr[5], int len){
for(int i=0; i<len; i++){
printf("%d ", arr[i]);
}
printf("\n");
}
//方法三:使用指针作为形参
void printArray3(int *arr, int len){
for(int i=0; i<len; i++){
printf("%d ", *(arr+i));
}
printf("\n");
}
int main(){
int arr[5] = {1, 2, 3, 4, 5};
int len = sizeof(arr)/sizeof(arr[0]);
printArray1(arr, len);
printArray2(arr, len);
printArray3(arr, len);
return 0;
}
```
阅读全文