在编程中,函数是非常重要的一个概念,其作用在于把一些代码模块化,便于复用和维护。而数组则是一种常见的数据结构,用于存储一组数据。那么,如何将数组作为参数传入函数呢?
方法一:传递数组的指针
C/C++等语言中,可以通过传递数组的指针的方式来将数组作为参数传入函数,示例代码如下:
```c
void printArr(int *arr, int len){
for(int i=0;i
printf("%d ",arr[i]);
}
printf("\n");
}
int main(){
int arr[] = {1,2,3,4,5};
int len = sizeof(arr)/sizeof(int);
printArr(arr,len);
return 0;
}
```
方法二:传递数组的引用
C++中,还可以通过传递数组的引用的方式来将数组作为参数传入函数。这种方式会将数组的地址传递给函数,从而能够保证函数对数组进行修改后,原数组也会发生相应的变化,示例代码如下:
```c++
void modifyArr(int (&arr)[5]){
for(int i=0;i<5;i++){
arr[i] = arr[i]*2;
}
}
int main(){
int arr[] = {1,2,3,4,5};
modifyArr(arr);
for(int i=0;i<5;i++){
cout<
}
cout<
return 0;
}
```
方法三:传递数组的引用或指针加上数组长度
Java等语言中,由于数组是一种引用类型,因此也可以通过传递数组的引用的方式来将数组作为参数传入函数,而且还需要额外传递数组的长度,示例代码如下:
```java
static void printArr(int[] arr, int len){
for(int i=0;i
System.out.print(arr[i]+" ");
}
System.out.println();
}
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
int len = arr.length;
printArr(arr,len);
}
```
方法四:使用模板函数传递数组
C++中还可以使用模板函数,将数组作为模板参数来进行传递,示例代码如下:
```c++
template
void printArr(T (&arr)[N]){
for(int i=0;i
cout<
}
cout<
}
int main(){
int arr[] = {1,2,3,4,5};
printArr(arr);
return 0;
}
```
综上所述,将数组作为参数传入函数,可以通过传递数组的指针、引用或指针加上数组长度、使用模板函数等方式来实现。不同的语言可能有不同的实现方式,但可以根据语言的特性选择最适合的方式来传递数组。
扫码领取最新备考资料