陣列作為函式引數怎麼用,陣列作為函式引數怎麼用C

時間 2021-08-11 17:49:52

1樓:何度千尋

陣列名作函式引數

陣列名可以作函式的實參和形參。如:

main()

f(int arr,int n)

array為實引數組名,arr為形引數組名。在學習指標變數之後就更容易理解這個問題了。陣列名就是陣列的首地址,實參向形參傳送陣列名實際上就是傳送陣列的地址,形參得到該地址後也指向同一陣列。

這就好象同一件物品有兩個彼此不同的名稱一樣。

同樣,指標變數的值也是地址,陣列指標變數的值即為陣列的首地址,當然也可作為函式的引數使用。

歸納起來,如果有一個實引數組,想在函式中改變此陣列的元素的值,實參與形參的對應關係有以下4種:

形參和實參都是陣列名。

main()

}a和x指的是同一組陣列。

實用陣列,形參用指標變數。

main()

f(int *x,int n)

實參、型參都用指標變數。

實參為指標變數,型參為陣列名。

2樓:金色潛鳥

同形式引數型式有關。

形式引數 int array,

int b[5] 作實際引數用, 只需寫 b#include

void reverse(int array, int size)}main();

int c[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;}

3樓:匿名使用者

void reverse(int *array, int size)

傳參時傳陣列名

4樓:匿名使用者

reverse(int *array, int size)

reverse(int array, int size)

reverse(int &array, int size)

c++中關於陣列作為函式引數的幾種方法

5樓:折柳成萌

對於bai陣列名

作為引數傳du遞,有兩種方式:

1. 使用zhi

陣列名本身,如以下程dao序求陣列內a的最大值#include

int max(int x,int n) //作為數容組定義形式int main(void)

;int m;

m=max(a,5); //陣列名用為實參printf("a的最大值:%d\n",m);

return 0;

}2.用指標作為引數,這就簡單了,如:

int max(int *x,int n) //作為陣列定義形式int main(void)

;int m;

m=max(a,5); //陣列名用為實參printf("a的最大值:%d\n",m);

return 0;

}兩者結果一樣

c++中如何給函式傳遞陣列引數

6樓:司馬刀劍

對於陣列

名作為參bai

數傳遞,有兩種du方式:

1. 使用zhi陣列名本身,如以下dao

程式求陣列專a的最大值屬

#include

int max(int x,int n) //作為陣列定義形式int main(void)

;int m;

m=max(a,5); //陣列名用為實參printf("a的最大值:%d\n",m);

return 0;

}2.用指標作為引數,這就簡單了,如:

int max(int *x,int n) //作為陣列定義形式int main(void)

;int m;

m=max(a,5); //陣列名用為實參printf("a的最大值:%d\n",m);

return 0;}

c++ 怎麼把字元陣列當作函式引數傳遞?

7樓:匿名使用者

以指標方式 或 陣列方式都可以實現引數傳遞,實際上都是將陣列的首地址傳遞到子函式中去。

如:#include

#include

void fun1( char *pstr )void fun2( char arr )int main()

8樓:匿名使用者

c++不能傳陣列,傳的是第一個陣列元素的地址。

void f(int array[10])void f(int array)

void f(int *array)

三種一樣的意思,最好寫成指標形式。

在c++中,用陣列,指標,和什麼作為函式引數,能夠將引數值帶回

9樓:

除了引用可以將引數值帶回外其餘的(陣列,指標等)都沒有這種能力!如果原題確實是這麼出的,那隻能說明出題者是c++半吊子……

10樓:匿名使用者

引用,三者的本質都是指標

11樓:wl梢包

還有 引用&和全域性變數

12樓:匿名使用者

地址,三者的本質都是地址

c++如何將二位字元陣列作為引數傳遞給函式

13樓:優就業張老師

1 靜態的二維陣列。

也就是形式為char a[m][n]形式的陣列,在傳引數的時候,需要在形參中指明二維陣列的寬度,也就是n值。

可以寫成char a[m][n]的形式,也可以寫成char a[n]的形式。

另外,由於靜態陣列的單元是連續的,也可以轉成一維陣列傳入,並在其它引數中指明二維陣列的長和寬。不過在函式中訪問時需要做對應的轉換。

2 動態二維陣列,即char ** p;在p上分配的二維陣列,本質上為二維指標。 可以直接以char **型別引數傳入。

c++ “陣列可以通過值引數和引用引數兩種方式傳遞給函式”的說法對否?

14樓:匿名使用者

不對。int,char或者自定義的類可以通過值引數和引用引數兩種方式傳遞給函式,陣列不行。

陣列是兩種指標傳遞:

void sort(int *a); //對於指標a來說是值傳遞,對於陣列來說是指標傳遞

void sort(int a[100]); //這種方法類似於引用,但實質上還是指標傳遞

15樓:謝3哥

當然對了

1,引用 int aaaa(int& a);

2,值 int bbbb(int b);

C用多維陣列名作為函式引數時,如果陣列的行和列均是變數,怎麼辦

陣列的行和列均是變數,需要動態開陣列,在c 裡面需要用到new動態開一個二維陣列 int irow 5 int iline 5 int parry new int irow for int i 0 i 用完陣列後需要釋放,for int i 0 i delete parry 俎晨朗 打個比方,比如說...

C語言,使用指標作為函式引數,寫一求陣列中最大值和最小指的函

娛樂小八卦啊 include void maxminvalue int b,int n propotype int max,min define global variables void main int i,a n n sizeof a sizeof a 0 maxminvalue a,n ca...

C陣列的引用做函式引數怎麼寫,c 中關於陣列作為函式引數的幾種方法

陣列名作函式引數 陣列名可以作函式的實參和形參。如 12 3456 78910 11main f int arr,int n array為實引數組名,arr為形引數組名。在學習指標變數之後就更容易理解這個問題了。陣列名就是陣列的首地址,實參向形參傳送陣列名實際上就是傳送陣列的地址,形參得到該地址後也...