1、屬于地址傳遞,在函數(shù)里修改的話,將直接影響調(diào)用方的數(shù)值。這是因為數(shù)組名代表這個數(shù)組的首地址,不過是靜態(tài)不可更改的而已。在函數(shù)里用引用[i]下標時,就是找到這個數(shù)組第i號元素的地址進行修改的。所以是第于是地址傳遞。
創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的臺兒網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
2、數(shù)組作為參數(shù)是按地址傳遞的 數(shù)組名就是數(shù)組的首地址。因此在數(shù)組名作函數(shù)參數(shù)時所進行的傳送只是地址的傳送, 也就是說把實參數(shù)組的首地址賦予形參數(shù)組名。形參數(shù)組名取得該首地址之后,也就等于有了實在的數(shù)組。
3、在C語言中可以用二維數(shù)組作為實參或者形參。
4、因為數(shù)組在內(nèi)存中是一塊連續(xù)的內(nèi)存,只要將該數(shù)組的首地址傳進去,當(dāng)然就可以訪問整個數(shù)組了。值得注意的是,由于只傳了首地址,函數(shù)不知道數(shù)組的維數(shù),所以還得把數(shù)組的維數(shù)傳進去,那就可以完全操作該數(shù)組了。
數(shù)組名代表著整個數(shù)組的地址,如果一維數(shù)組的名字作為函數(shù)實參,傳遞的是整個數(shù)組,即形參數(shù)組和實參數(shù)組完全相同,是存放在同一存儲空間的同一個數(shù)組。這樣形參數(shù)組 修改時,實參數(shù)組也同時被修改了。
屬于地址傳遞,在函數(shù)里修改的話,將直接影響調(diào)用方的數(shù)值。這是因為數(shù)組名代表這個數(shù)組的首地址,不過是靜態(tài)不可更改的而已。在函數(shù)里用引用[i]下標時,就是找到這個數(shù)組第i號元素的地址進行修改的。所以是第于是地址傳遞。
傳數(shù)組給一個函數(shù),數(shù)組類型自動轉(zhuǎn)換為指針類型,因而傳的實際是地址。void func(int array[10])void func(int array[])void func(int *array)所以以上三種函數(shù)聲明完全等同。實際情況是,數(shù)組做參數(shù),完全無法按值傳遞。
C語言中,數(shù)組名作為函數(shù)參數(shù),屬于數(shù)組參數(shù)傳遞。在VB0中,允許使用數(shù)組作為實參傳遞到子過程的形參中,數(shù)組傳遞必須采用地址傳遞的方式來傳遞參數(shù)。
下面例子,作為 指針傳遞 和 行指針傳遞。
在C語言中,用數(shù)組名作為函數(shù)調(diào)用時的實參,實際上傳遞給形參的是首地址。因為數(shù)組名傳遞的是數(shù)組的地址也就是第一個元素的地址。
1、函數(shù)原型 type fun (type (name*)[size])\x0d\x0a \x0d\x0atype是你要定義的類型,fun是函數(shù)名,name是在函數(shù)中二維數(shù)組的名字,\x0d\x0asize是二維數(shù)組第2維的長度。
2、先將二維數(shù)組的行指針存儲到一個指針數(shù)組中,再將指針數(shù)組傳遞到子函數(shù)中去。#include stdio.h void output(int pa[],int row,int col )//這個函數(shù)更通用,但調(diào)用前,要做好準備工作。
3、不可能達到目的。因為C語言中沒有引用這類型,C++才有。另,C/C++都不支持傳遞數(shù)組,只能傳遞數(shù)組的首元素或行指針,所以即使是C++,也只能傳遞數(shù)組指針的引用,而不可能傳遞數(shù)組的引用,因為數(shù)組沒有引用。
4、C語言如果給函數(shù)傳遞二維數(shù)組作為參數(shù) 先看一個傳遞二維數(shù)組的例子:編譯:程序看著沒有任何問題,但是編譯器通不過,報錯在處理二維數(shù)組參數(shù)a的時候,類型不兼容。
5、二維數(shù)組傳遞給函數(shù)的時候,有兩種方式,一種是a[][6],一種是(*a)[6],這里的6是不能省略的,不然編譯器不知道如何通過加多少來偏移這個指向數(shù)組的指針。