要將數(shù)組長(zhǎng)度作為一個(gè)參數(shù)傳給average函數(shù),不能在average函數(shù)內(nèi)部通過(guò)int arrLen = sizeof(a) / 4;來(lái)計(jì)算數(shù)組長(zhǎng)度。

創(chuàng)新互聯(lián)公司 - 綿陽(yáng)服務(wù)器托管,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽(yáng)服務(wù)器托管,德陽(yáng)服務(wù)器托管,遂寧服務(wù)器托管,綿陽(yáng)服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),綿陽(yáng)服務(wù)器托管,西南服務(wù)器托管,四川/成都大帶寬,機(jī)柜大帶寬租用·托管,四川老牌IDC服務(wù)商
void fun(int *arr, int n);使用指針,這種方式和題目中的方式是最常用的方式,第一種最不常用。
屬于地址傳遞,在函數(shù)里修改的話,將直接影響調(diào)用方的數(shù)值。這是因?yàn)閿?shù)組名代表這個(gè)數(shù)組的首地址,不過(guò)是靜態(tài)不可更改的而已。在函數(shù)里用引用[i]下標(biāo)時(shí),就是找到這個(gè)數(shù)組第i號(hào)元素的地址進(jìn)行修改的。所以是第于是地址傳遞。
數(shù)組名就是數(shù)組的首地址。因此在數(shù)組名作函數(shù)參數(shù)時(shí)所進(jìn)行的傳送只是地址的傳送, 也就是說(shuō)把實(shí)參數(shù)組的首地址賦予形參數(shù)組名。形參數(shù)組名取得該首地址之后,也就等于有了實(shí)在的數(shù)組。
所以以上三種函數(shù)聲明完全等同。實(shí)際情況是,數(shù)組做參數(shù),完全無(wú)法按值傳遞。這是由C/C++函數(shù)的實(shí)現(xiàn)機(jī)制決定的。
在C語(yǔ)言中可以用二維數(shù)組作為實(shí)參或者形參。
如果你的二維數(shù)組是確定的,比如本例中的2×2。
函數(shù)原型 type fun (type (name*)[size])\x0d\x0a \x0d\x0atype是你要定義的類型,fun是函數(shù)名,name是在函數(shù)中二維數(shù)組的名字,\x0d\x0asize是二維數(shù)組第2維的長(zhǎng)度。
C/C++中,二維數(shù)組的第一維的每一個(gè)元素都是一維數(shù)組。所以,用指向一維數(shù)組的指針或用第一維維數(shù)空缺的二維數(shù)組作為函數(shù)的形式參數(shù)都能達(dá)到目的。
C語(yǔ)言如果給函數(shù)傳遞二維數(shù)組作為參數(shù) 先看一個(gè)傳遞二維數(shù)組的例子:編譯:程序看著沒(méi)有任何問(wèn)題,但是編譯器通不過(guò),報(bào)錯(cuò)在處理二維數(shù)組參數(shù)a的時(shí)候,類型不兼容。
C語(yǔ)言中,數(shù)組名作為函數(shù)參數(shù),屬于數(shù)組參數(shù)傳遞。在VB0中,允許使用數(shù)組作為實(shí)參傳遞到子過(guò)程的形參中,數(shù)組傳遞必須采用地址傳遞的方式來(lái)傳遞參數(shù)。
要將數(shù)組長(zhǎng)度作為一個(gè)參數(shù)傳給average函數(shù),不能在average函數(shù)內(nèi)部通過(guò)int arrLen = sizeof(a) / 4;來(lái)計(jì)算數(shù)組長(zhǎng)度。
在C語(yǔ)言中,用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,實(shí)際上傳遞給形參的是首地址。因?yàn)閿?shù)組名傳遞的是數(shù)組的地址也就是第一個(gè)元素的地址。
這個(gè)選擇題的答案是C,即當(dāng)數(shù)組名作為函數(shù)參數(shù)時(shí),傳遞給被調(diào)函數(shù)的是數(shù)組的第一個(gè)元素(下標(biāo)為0)的地址。
C語(yǔ)言中數(shù)組名作為實(shí)參傳給被調(diào)用的函數(shù)時(shí),形參獲得的是數(shù)組的起始地址。還是用例子說(shuō)話吧。
當(dāng)前文章:c語(yǔ)言數(shù)組函數(shù)參數(shù) c 函數(shù)參數(shù) 數(shù)組
轉(zhuǎn)載注明:http://chinadenli.net/article19/deejhgh.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、軟件開(kāi)發(fā)、網(wǎng)站收錄、小程序開(kāi)發(fā)、、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容