新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)的C語(yǔ)言中數(shù)組的用法

單片機(jī)的C語(yǔ)言中數(shù)組的用法

作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏
數(shù)組是由具有相同類(lèi)型的數(shù)據(jù)元素組成的有序集合。數(shù)組是由數(shù)組名來(lái)表示的,數(shù)組中的數(shù)據(jù)由特定的下標(biāo)來(lái)唯一確定。引入數(shù)組的目的,是使用一塊連續(xù)的內(nèi)存空間存儲(chǔ)多個(gè)類(lèi)型相同的數(shù)據(jù),以解決一批相關(guān)數(shù)據(jù)的存儲(chǔ)問(wèn)題。數(shù)組與普通變量一樣,也必須先定義,后使用。數(shù)組在C51語(yǔ)言的地位舉足輕重,因此深入地了解數(shù)組是很有必要的。下面就對(duì)數(shù)組進(jìn)行詳細(xì)的介紹。

(1)一維數(shù)組

本文引用地址:http://m.butianyuan.cn/article/201611/320327.htm

一維數(shù)組是最簡(jiǎn)單的數(shù)組,用來(lái)存放類(lèi)型相同的數(shù)據(jù)。數(shù)據(jù)的存放是線性連續(xù)的。

用以下例程說(shuō)明數(shù)組的建立、數(shù)據(jù)操作:

#include

unsigned char array[10];//定義一個(gè)有10個(gè)單元的數(shù)組

void main()

{

unsigned char i;

for(i=0;i<10;i++)

{

array[i]=i; //用下標(biāo)調(diào)用數(shù)組中的元素

}

while(1);

}

數(shù)組名是用來(lái)表示數(shù)組的標(biāo)識(shí),其實(shí)它是數(shù)組的首地址,即一個(gè)指針。不過(guò)它所表示的地址是固定的,不能改動(dòng)。如前幾章所述的相關(guān)內(nèi)容,array[2]與*(array+2)是等效的,不過(guò)不能用array++,因?yàn)閍rray是常量。

上面的程序中的數(shù)組是靜態(tài)建立的,以下例程來(lái)用說(shuō)明數(shù)組的動(dòng)態(tài)建立。

#include

#include

unsigned char *parray;

void main()

{

unsigned char i;

parray=(unsigned char *)malloc(10); //動(dòng)態(tài)創(chuàng)建一個(gè)數(shù)組

for(i=0;i<10;i++)

{

parray[i]=i; //向數(shù)組中賦值

}

free(parray); //釋放數(shù)組

while(1);

}

字符串是數(shù)組的一個(gè)重要特例。它的每個(gè)單元的數(shù)據(jù)均為字符類(lèi)型(char),最后一個(gè)單元為