陣列名是陣列元素首位址,可以直接當做實參,
可以用指標或方式來當形參接收,都是位址傳遞,形參都是指標方式
#include
void
input
(int arr)
void
output
(int
* arr)
//這裡得出的大小是4個位元組,證明形參是指標形式
printf
("\n%d "
,sizeof
(arr));
}void
test()
;printf
("%d \n"
,sizeof
(arr));
//如果arr不是位址傳遞,這裡實參傳入arr陣列首位址會報錯
input
(arr)
;//用指標做實參
陣列名做函式引數
陣列名做函式引數 用陣列名做函式引數與用陣列元素作實參有幾點不同 1 用陣列元素作實參時,只要陣列型別和函式的形參變數的型別一致,那麼作為下標變數的陣列元素的型別也和函式形參變數的型別是一致的。因此,並不要求函式的形參也是下標變數。換句話說,對陣列元素的處理是按普通變數對待的。用陣列名作函式引數時,...
陣列 指標 變數做函式引數
陣列引數等同與指標引數,會在函式內改變引數值 變數引數 函式內不會改變函式值 include using namespace std 00affe68 void print score int array1,int n 把每門課程的成績 加m分 void add score int porint1,...
陣列做函式引數的退化問題
include includevoid arraysort int a,int num void arraysort int a,int num void print array int a,int num int main int i 0 int num sizeof a sizeof a 0 n...