1、三種傳遞陣列的寫法
下面這三種寫法本質是一樣的:
void fun1(int *x, size_t size);
void fun2(int x, size_t size);
void fun3(int[10] x, size_t size);//這個10其實是沒用的,編譯器會忽略掉
2、形參的長度會引起誤解
3、陣列實參-陣列會悄悄地轉化為指標
4、通過引用傳遞陣列
void fun4(int (&x)[10]);//這個10不是沒用的,必須要寫。這樣寫只能傳10個陣列元素大小的陣列
5、多維陣列的傳遞
void fun5(int (*x)[10], int rowsize);//10是列數,rowsize是行數
6、c++標準庫常用的方法,傳兩個指標
void fun6(const int *beg, const int *end);
呼叫時:
fun6(arr,arr+arrsize);
函式引數傳遞 陣列形參
二 用兩個指標傳遞陣列 三 多維陣列的傳遞 陣列有兩個特殊的性質 1.陣列是不能複製的。2.陣列的名稱實際上是指向陣列第乙個元素的指標。因此,我們在向函式傳遞陣列 的時候就可以用傳遞指標的方法。有三種傳遞陣列的方法 如下 x指向陣列的第乙個元素 void printvalues int x,size...
C 函式引數傳遞 非引用形參
非引用形參 1 普通形參 非const普通形參 可以傳所有型別的普通實參 cosnt普通形參 可以傳所有型別的普通實參,但不能修改const普通形參的值 2 指標形參 非const指標形參 不能通過非const形參來修改const實參,因此只能傳非const指標實參 cosnt指標形參 可以 傳所有...
C 陣列作為形參傳遞給函式
以下三種形式等價 void function const int arg void function const int arg void function const int arg 10 這裡維度表示期望有10個,並不代表真實為10個以上三個函式等價於將陣列的頭指標const int 型別傳遞給...