什么是數組


所謂數組,就是相同數據類型的元素按一定順序排列的集合,就是把有限個類型相同的變量用一個名字命名,然后用編號區分他們的變量的集合,這個名字稱為數組名,編號稱為下標。組成數組的各個變量稱為數組的分量,也稱為數組的元素,有時也稱為下標變量。數組是在程序設計中,為了處理方便, 把具有相同類型的若干變量按有序的形式組織起來的一種形式。這些按序排列的同類數據元素的集合稱為數組

 

產生來源

在C語言中, 數組屬於構造數據類型。一個數組可以分解為多個數組元素,這些數組元素可以是基本數據類型或是構造類型。因此按數組元素的類型不同,數組又可分為數值數組、字符數組、指針數組、結構數組等各種類別。

關於可變長數組(VLA)的問題:原來的C89標准中是不允許可變長數組出現的,但是在C99標准中,加入了對VLA的支持,但是支持的編譯器不多,而且由於棧溢出的安全問題,沒有太多的人敢用這個可變長數組,所以在C11標准中又把它規定為可選實現的功能了。

如果有過用其它語言編程的經歷,那么想必會熟悉數組的概念。由於有了數組,可以用相同名字引用一系列變量,並用數字(索引)來識別它們。在許多場合,使用數組可以縮短和簡化程序,因為可以利用索引值設計一個循環,高效處理多種情況。數組有上界和下界,數組的元素在上下界內是連續的。因為 Visual Basic對每一個索引值都分配空間,所以不要不切實際聲明一個太大的數組。

此處數組是程序中聲明的變量數組。它們不同於控件數組,控件數組是在設計時通過設置控件的 Index 屬性規定的。變量數組總是連續的;與控件數組不同的是,不能從一個數組的中部加載或卸載數組元素。

一個數組中的所有元素具有相同的數據類型(在C、C++、Java、pascal中都這樣。但也並非所有涉及數組的地方都這樣,比如在Visual Foxpro中的數組就並沒這樣的要求)。當然,當數據類型為 Variant 時,各個元素能夠包含不同種類的數據(對象、字符串、數值等等)。可以聲明任何基本數據類型的數組,包括用戶自定義類型和對象變量。

如果要用戶輸入的是一個數組,一般是用一個循環,但是在輸入前也需要固定數組的大小。

compact跟變長數組沒有太大的關系,也應該用不到變長數組。因為一般的傳數組到函數中就是傳數組的地址和元素的個數的,那只是一個提示,不是要求。

原型可以這樣寫(假設數組的元素是type):

int compact(type *Array,int Count)

數組類型說明 在C語言中使用數組必須先進行類型說明。

數組說明的一般形式為:類型說明符 數組名 [常量表達式],……; 其中,類型說明符是任一種基本數據類型或構造數據類型。數組名是用戶定義的數組標識符。方括號中的常量表達式表示數據元素的個數,也稱為數組的長度。

軟道語錄

數組

 舉例

int a[10]; 說明整型數組a,有10個元素。

float b[10],c[20]; 說明實型數組b,有10個元素,實型數組c,有20個元素。

char ch[20]; 說明字符數組ch,有20個元素。

 特點

1.數組是相同數據類型的元素的集合

2.數組中的各元素是有先后順序的,它們在內存中按照這個先后順序連續存放在一起

3.數組元素用整個數組的名字和它自己在數組中的順序位置來表示。例如,a[0]表示名字為a的數組中的第一個元素,a[1]代表數組a的第二個元素,以此類推。

對於VB的數組,表示數組元素時應注意;

1下標要緊跟在數組名后,而且用圓括號括起來(不能用其他括號)

2下標可以是常量,變量,或表達式,但其值必須是整數(如果是小數將四舍五入為整數)

3下標必須為一段連續的整數,其最小值成為下界,其最大值成為上界。不加說明時下界值默認為1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM