誰能解釋一下陣列在函式中該怎麼傳遞c中

時間 2021-08-30 09:08:44

1樓:匿名使用者

1、陣列在函式中的傳遞是以指標方式進行的,作為實參,被調函式僅接收陣列的首址,至於陣列的長度往往需要另外一個實參提供(字元陣列除外),

2、欲將在被調函式中定義的陣列傳遞(返回)給呼叫函式,需要動態申請(new)記憶體,並仍以指標方式回傳,長度不需要回傳,但要記住在程式結束前要釋放(delete)已申請的動態空間。

2樓:匿名使用者

陣列名+陣列大小。只能這樣子。

int a[10];

1.int getarray( int b, int length);

2.在子函式裡 new 一個或者 malloc一個新陣列,但不支援這樣做,會有風險

3.int getarray( int* b, int length);

4.陣列可以引用,但是其結果,得到的只是一個陣列頭個元素的地址。

3樓:

1.直接傳陣列首地址,即陣列的變數名;

2.最好使用new/allocate,在主函式中delete/free;

3.陣列首地址就是指標,當然如有必要,把長度也傳遞;

4.即有指標又有引用看上就亂了,但應該可以用指標的引用。

4樓:匿名使用者

陣列在c++中是以指標的形式進行傳遞的。

我們可以把形參寫成指標形式,也可以寫成陣列形式,但本質上傳遞的都是指標。引用《c++ primer》上的一個例子:

//儘管形式不同,但這三個print函式是等價的

//每個函式都有一個const int*型別的形參

void print(const int*);

void print(const int);   //可以看出來,函式的意圖是作用於一個陣列

void print(const int[10]); //這裡的維度表示我們期望陣列含有多少元素,實際不一定

以上三種形式的宣告是等價的,當呼叫print函式時,編譯器只檢查傳入的引數是否是(或能轉換成)const int*:

int i = 0, j[2] = ;

print(&i);  //正確:&i的型別是int*

print(j);   //正確:j轉換成int*並指向j[0]

5樓:

函式中陣列的傳遞,實際上傳遞的是陣列的首地址,理解了這一點就行了

指標是地址,引用也是地址。。。

c++中怎麼把陣列當做引數傳到函式中

6樓:

傳陣列的指標就行了

傳陣列太麻煩,因為還要告知陣列的大小

7樓:雙龍鬥

給你個例子。。

int sum(int a, int n)return sum;

}void main()

;cout<< sum(a, 3) << endl;}

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

8樓:司馬刀劍

對於陣列

名作為參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;}

有誰能解釋一下,有誰能解釋一下?

歡樂平頭哥 有緣無份的字面意思 的確是能夠相遇到認識,有緣但不能夠在一起,無份但是有沒有聽過一句話 緣在天定 份在人為所以 老天只負責你們認識 不負責你們永遠在一起因為那是你們自己要做的功課最後 要分手了 人們都會吧有緣無份拿出來惋惜其實是因為你們 人為 得不夠 才無份的 來自佛子嶺有內涵的杏仁 你...

誰能解釋一下什么叫「公積金」誰能解釋一下什麼叫「公積金」

職工住房公積 金是一種義務性的 強制性的個人長期住房儲蓄 職工個人每月按一定比例扣繳工資,所在單位每月拿出相等金額,兩數相加,存入職工個人賬戶。此項儲蓄 歸職工個人所有。建立職工住房公積金是為解決職工住房建設投資 和職工個人買房 建房及繳納新增加房租之用。但此房屋公積金不能抵交住房租金,不得上市流通...

誰能解釋一下什麼叫愛,誰能解釋一下什麼叫驚喜?

愛是包容而不是放縱 愛是關懷而不是寵愛 愛是相互交融而不是單相思 愛是百味而不全是甜蜜 真正的愛情並不一定是他人眼中的完美匹配 而是相愛的人彼此心靈的相互契合 是為了讓對方生活得更好而默默奉獻 這份愛不僅溫潤著他們自己,也同樣溫潤著那些世俗的心真正的愛情,是在能愛的時候,懂得珍惜 真正的愛情,是在無...