数组作为函数参数怎么用C++?

数组作为函数参数怎么用C++


繁星coding
浏览 1060回答 3
3回答

芜湖不芜

数组名作函数参数数组名可以作函数的实参和形参。如:1234567891011main(){    int array[10];    …………    f(array,10);    …………}f(int arr[],int n){    …………}array为实参数组名,arr为形参数组名。在学习指针变量之后就更容易理解这个问题了。数组名就是数组的首地址,实参向形参传送数组名实际上就是传送数组的地址,形参得到该地址后也指向同一数组。这就好象同一件物品有两个彼此不同的名称一样。同样,指针变量的值也是地址,数组指针变量的值即为数组的首地址,当然也可作为函数的参数使用。归纳起来,如果有一个实参数组,想在函数中改变此数组的元素的值,实参与形参的对应关系有以下4种:形参和实参都是数组名。12main(){123456789    int a[10];    ……    f(a,10)    ……    f(int x[],int n)    {        ……    }}1a和x指的是同一组数组。实用数组,形参用指针变量。1234567891011main(){    int a[10];    ……    f(a,10)    ……}f(int *x,int n){    ……}实参、型参都用指针变量。 实参为指针变量,型参为数组名。

POPMUISE

同形式参数型式有关。形式参数 int array[],int b[5] 作实际参数用, 只需写 b#include <stdio.h>void reverse(int array[], int size) {int i,t;for (i=0;i<size/2;i++){t = array[i];array[i]=array[size-1-i];array[size-1-i]=t;}}main(){int b[5]={1,2,3,4,5};int c[6]={1,2,3,4,5,6};int i;reverse(b,5);reverse(c,6);for (i=0;i<5;i++) printf("%d ",b[i]);printf("\n");for (i=0;i<6;i++) printf("%d ",c[i]);return 0;}

白板的微信

reverse(int *array, int size)reverse(int array[], int size)reverse(int &array, int size)
打开App,查看更多内容
随时随地看视频慕课网APP