當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > C語(yǔ)言中數(shù)組定義方式
一、數(shù)組簡(jiǎn)介
<1>前言
大家首先來(lái)思考一個(gè)問題,若是我們想要定義兩個(gè)變量,求這兩個(gè)數(shù)的平均數(shù),該怎么求呢?
例如:int a = 10,b = 20
int average = (a + b) / 2;
上面的公式,我相信大家應(yīng)該很快就能夠求出來(lái)。
若是,我們想要定義5個(gè)變量,求他們的平均值呢?
我們是不是要這么寫?
Int a = 1,b = 2,c = 3,d = 5,e = 5;
我相信這樣寫,大家應(yīng)該也能求出來(lái)。不過,大家這個(gè)時(shí)候,應(yīng)該會(huì)感覺到比較麻煩了,我們定義了太多的變量了。若是我們要求100個(gè)變量的平均數(shù)的話,那么豈不是我們要定義100個(gè)變量。這樣,我想要是沒有耐心的同學(xué),肯定早就不干了吧!因此,我們聰明的程序員提出來(lái)一個(gè)叫做數(shù)組的概念。
<2>數(shù)組的概念
數(shù)組:我們把相同數(shù)據(jù)類型變量的集合稱為數(shù)組。
<3>定義方式
數(shù)據(jù)類型 變量名[數(shù)組元素的個(gè)數(shù)]
例如:int a[5];//我們定義了5個(gè)int類型的元素。
<4>內(nèi)存中的排序
int a[5];
由上圖,我們可以看出:
<1>數(shù)組中共有5個(gè)元素,a[0],[1],a[2],a[3],a[4]
<2>數(shù)組的第一個(gè)下標(biāo)為0,最后一個(gè)下標(biāo)為數(shù)組元素個(gè)數(shù)-1
<3>數(shù)組中每個(gè)成員的大小:數(shù)組組中每個(gè)成員的大小,取決于數(shù)組元素的數(shù)據(jù)類型,此時(shí)數(shù)組成員的大小:4byte(一個(gè)int類型大小)
<4>整個(gè)數(shù)組的大小=一個(gè)數(shù)組成員的大小*數(shù)組元素的個(gè)數(shù)
即:4 * 5 = 20;
或者 sizeof(數(shù)組名),可得數(shù)組的大小
注意:數(shù)組的數(shù)組名標(biāo)示數(shù)組首元素的首地址。
以int a[5]為例, 數(shù)組首元素為a[0],則它的地址為&a[0],故a 其實(shí)標(biāo)示了&a[0].
思考:我們?cè)趺蠢斫鈇[0],a[1],a[2],a[3]?
a<===>&a[0]
a[0] =====>表示數(shù)組名a沒有偏移,然后去對(duì)應(yīng)地址中的數(shù)據(jù)。
a[1]======>表示a偏移了一個(gè)地址 1 個(gè)數(shù)組元素?cái)?shù)據(jù)類型的大小,然后取該地址中的數(shù)據(jù)
a[2]======>表示a偏移了一個(gè)地址 2個(gè)數(shù)組元素?cái)?shù)據(jù)類型的大小,然后取該地址中的數(shù)據(jù)
實(shí)例代碼:
運(yùn)行結(jié)果: