- N +

數組的定義及表示方法(VB中數組的定義是什么)

大家好,如果您還對數組的定義及表示方法不太了解,沒有關系,今天就由本站為大家分享數組的定義及表示方法的知識,包括VB中數組的定義是什么的問題都會給大家分析到,還望可以解決大家的問題,下面我們就開始吧!

數組元素與數組元素地址的表示方法

&a[i][j]表示數組a中第i行第j列的元素的地址a[i]+j如果數組a定義為一個二維數組,那么a[i]+j就表示第i行第j列的元素的地址,和上面那個一樣,如果數組a是一維數組,那么就表示一個表達式的值*(a+1)=j數組名表示第一個元素的地址,加1后表示a[0][1]的地址,這句相當于a[0][1]=j;&a[0][0]+4*i+j這個表示a[i][j]的地址,前提是a的列數為4a[0]+4*i+j這個表示a[4*i+j][0]的地址,因為a[0]表示第一行的地址,遞增的單位為一行

VB中數組的定義是什么

一、數組的概念

數組是一組具有相同類型和名稱的變量的集合。這些變量稱為數組的元素,每個數組元素都有一個編號,這個編號叫做下標,我們可以通過下標來區別這些元素。數組元素的個數有時也稱之為數組的長度。

一般情況下,數組的元素類型必須相同,可以是前面講過的各種基本數據類型。但當數組類型被指定為變體型時,它的各個元素就可以是不同的類型。

數組和變量一樣,也是有作用域的,按作用域的不同可以把數組分為:過程級數組(或稱為局部數組)、模塊級數組以及全局數組。

二、定長數組和動態數組

定長數組

定長數組的長度是在定義時就確定的,在程序運行過程中是固定不變的。其定義格式為:

Dim數組名([下界TO]上界)[As類型名]

其中,數組的下界和類型是可選的。所謂下界和上界,就是數組下標的最小值和最大值。缺省下界時,vB默認的下界是0,但通常人們習慣上是從1開始的,因此我們可以設置讓數組的默認下界為1,這需要在每個模塊的“(聲明)”部分添加一行代碼:

如果定義數組時不指定其類型,默認是變體型的。

下面舉例說明定長數組的定義:

①Dim

a(1to3)AsInteger

②Dimb(5to9)AsString

③Dimc(7)AsInteger

④Dim

d(6)

其中,例①定義了一個具有三個元素的整型數組,其下標從1到3。例②定義了一個具有五個元素的字符型數組,其下標從5到9。例③缺省了下界,它定義了一個具有八個元素的整型數組,其下標從0到7。例④則缺省了下界和類型,定義的是具有七個元素的變體型數組,其下標從0到6。如果在該模塊的“(聲明)”部分添加了Option

base1,則例③和例④的下標都是從l開始了。

在定義定長數組時,其上界和下界必須是常數或常量表達式。

動態數組

在很多情況下,數組的長度事先是無法預測的,而且有時可能需要在程序中改變數組的長度以適應新的情況,因此出現了動態數組。動態數組是在定義數組只指定數組名及其類型,等以后知道數組的長度或需要改變數組長度時再用“ReDim”指定它的長度。現舉例如下:

DimXASInteger

Dima()AsString

……

ReDima(x)

……

X=X+3

ReDim

a(x)

其中的“…”代表其它代碼。這段代碼首先定義了一個整型變量和—個字符型的動態數組,之后經過一系列運算后使變量X得到一個定值,再使用“ReDim”指定數組的長度,最后根據需要又再一次改變了數組的長度。

雖然可以一次或多次改變動態數組的長度,但當重新指定數組長度時,數組內原有的數據降會被清除。如果既想改變數組的長度,又想保留數組原有的數據,則在使用“ReDim”時需要加上“Preserve”關鍵字。例如:ReDim

Preserve

a(x)。但要注意,如果縮小數組長度,那么數組中超出新的下界到上界之間的元素將清除,即使使用了“Preserve’’關鍵字,也不會保留這些元素,如果仍然訪問這些元素將會引起“下標越界”的錯誤!

當不需要再使用某個動態數組時,我們可以使用“Erase”刪除該數組,以釋放該數組占用的內存空間,例如:Erase

a()。

三、多維數組及數組元素的引用

一個數組可以是一維的,也可以是多維。當需要表示平面中的一個點坐標,就需要用到二維數組;表示空間中的一個點時,就需要用到三維數組。多維數組的定義格式為:

Dim數組名([下界TO]上界[,TO上界[下界TO]

[,…])[AS類型名]

多維數組的定義格式與—一維數組基本上是一致的,只是多加幾個上界和下界。

現在舉例如下:

Dima(1TO3,1

TO4)AsInteger

Dimb(5,9)AsSiring

Dimb(4,3)

這三行語句分別定義了一個兩維數組,第一個指定了下界及類型;第二個只指定了類型

使用默認的下界;最后一個下界和類型都沒有指定,其類型是變體型的。

對數組元素的引用,是數組名加下標的形式。例如:

Dima(5)as

Integer

Dimb(3,4)as

Integer

a(1)=3

a(2)=5

a(3)=a(1)+a(2)

b(2,1)=a(2)

msgbox

a(3)

msgbox

b(2,1)

在此例中,先對數組a的前三個元素賦值,再給數組b的一個元素賦值,最后顯示兩個數組元素的值。用數組元素時,其下標不要超出了下界至上界的范圍。

怎樣定義一個數組函數

定義數組必須要確定它的長度,所以int[]={1,2,3}類似的才能編譯通過。在函數的形參里使用inta[]其實是一個道理,它會在調用時被賦予初值和長度。申請的空間通過棧來保存,使用完了就會釋放,下一次調用,又會被賦予不同的初值和長度。

把自定義函數中的數組創建為static存儲性質,并把首地址及大小返回給主函數。

在自定義函數中創建數組時用動態方法建立的堆上,把首地址及大小返回給主函數,在主函數中使用完畢后釋放

C語言中函數數組的定義

C語言支持一維數組和多維數組。如果一個數組的所有元素都不是數組,那么該數組稱為一維數組。在C語言中使用數組必須先進行定義,一維數組的定義方式為:類型說明符;數組名;[常量表達式]。

其中,類型說明符是任一種基本數據類型或構造數據類型。數組名是用戶定義的數組標識符,方括號中的常量表達式表示數據元素的個數,也稱為數組的長度。例如:inta[10];/*說明整型數組a,有10個元素*/floatb[10],c[20];/*說明實型數組b,有10個元素,實型數組c,有20個元素*/charch[20];/*說明字符數組ch,有20個元素*/對于數組類型說明應注意以下幾點:

1、數組的類型實際上是指數組元素的取值類型。對于同一個數組,其所有元素的數據類型都是相同的。

2、數組名的書寫規則應符合標識符的書寫規定。

3、數組名不能與其它變量名相同。例如:inta;floata[10];是錯誤的。

4、方括號中常量表達式表示數組元素的個數,如a[5]表示數組a有5個元素。但是其下標從0開始計算。因此5個元素分別為a[0],a[1],a[2],a[3],a[4]。

5、不能在方括號中用變量來表示元素的個數,但是可以是符號常數或常量表達式。例如:#defineFD5//...inta[3+2],b[7+FD];是合法的。但是下述說明方式是錯誤的。intn=5;inta[n];

6、允許在同一個類型說明中,說明多個數組和多個變量。例如:inta,b,c,d,k1[10],k2[20];

數組是一組什么數據的集合,其中的每個元素稱為什么

C語言數組中:構成數組各個元素具有相同的數據類型。在程序設計中,為了處理方便,把具有相同類型的若干變量按有序的形式組織起來。這些按序排列的同類數據元素的集合稱為數組。以C語言中的一維數組為例,一維數組的定義方式為:類型說明符數組名[常量表達式];其中,類型說明符是任一種基本數據類型或構造數據類型。數組的類型實際上是指數組元素的取值類型。其實,從變量的角度看,每個數組元素(相當于變量)具有的屬性:數組元素名、數據類型、值、內存地址中,能每個元素都相同的也只能是數據類型。

END,本文到此結束,如果可以幫助到大家,還望關注本站哦!

返回列表
上一篇:
下一篇: