壹種是把數組名作為函數的形參和實參使用。
數組元素作為函數實參使用與普通變量是完全相同的,在發生函數調用時,把作為實參的數組元素的值傳給形參,只是“拷貝”實參中的變量的值,傳送給形參,實現單向的值傳送
用數組名作為函數參數與用數組元素作實參有幾點不同:
1)用數組元素作函數參數不要求形參也必須是數組,但是用數組名作函數參數時,則要求形參和相對應的實參都是類型相同的數組。
2)在 C 語言中,數組名除作為變量的標識符之外,數組名還代表了該數組在內存中的起始地址,當數組名作函數參數時,實參與形參之間不是“值傳遞”,而是“地址傳遞”,實參數組名將該數組的其實地址傳給形參數組,兩個數組***享壹段內存單元,編譯系統不再為形參數組分配存儲單元。
3)在變量做函數參數時,所進行的值傳遞是單向的。即只能從實參傳向形參,不能從形參傳回實參。
1)形參數組和實參數組類型必須壹致,否則出錯。
2)在函數形參表中,允許不給出形參數組的長度,或用壹個變量來表示數組元素的個數。
或寫為:
n 的值由主調函數的實參進行傳遞。
所有的地址都占8個字節。
3)形參數組和實參數組長度可以不相同,因為在調用時,只傳遞首地址而不檢查形參數組的長度。