vb陣列下標,在VB中,陣列下標的預設下界是 什麼? 。

時間 2022-03-12 04:30:15

1樓:匿名使用者

option base 語句 在模組級別中使用,用來宣告陣列下標的預設下界。語法option base 說明由於下界的預設設定是 0,因此無需使用 option base 語句。如果使用該語句,則必須寫在模組的所有過程之前。

一個模組中只能出現一次 option base,且必須位於帶維數的陣列宣告之前。注意 dim、private、public、redim 以及 static 語句中的 to 子句提供了一種更靈活的方式來控制陣列的下標。不過,如果沒有使用 to 子句顯式地指定下界,則可以使用 option base 將預設下界設為 1。

使用 array 函式或 paramarray 關鍵字建立的陣列的下界為 0;option base 對 array 或 paramarray 不起作用。option base 語句隻影響位於包含該語句的模組中的陣列下界。

2樓:匿名使用者

在vb中,陣列的下標預設從0開始,若希望預設從1開始,應在__模組宣告____部分使用___option base 1____語句宣告

3樓:

窗體的通用宣告處、option base 1

在vb中,陣列下標的預設下界是 什麼? 。

4樓:匿名使用者

vb中定義陣列的起始下標預設從0開始。用option base 1語句將陣列預設起始下標設定為 1。

(1)不使用optioan base 語句,陣列起始下標預設為 0option explicit

' 沒有用 option base 語句,陣列下標從0開始' 因此,陣列 a 包含了 11 個元素

dim a(10) as integer

private sub form_load()dim i as integer

for i = 0 to 10

a(i) = i

next

end sub

(2)用optioan base 1 語句,陣列起始下標預設為 1option explicit

option base 1

' 使用了 option base 1語句,陣列下標從1開始' 因此,陣列 a 包含了 10 個元素

dim a(10) as integer

private sub form_load()dim i as integer

for i = 1 to 10   '如果 i=0,則會出現「下標越界」錯誤!

a(i) = i

next

end sub

(3)在vb option base 語句中引數只能是 0 或 1,其他值是非法的。

5樓:亓若谷愛子

肯定的,不然怎麼形成陣列呢?在vb中的陣列下標的下界可以不是0例如arr(2

to8)

,但是在vb.net2010中下標必須是0開始,而且所有陣列都是動態的。

6樓:匿名使用者

如果沒有定義option base的話,或者定義陣列是沒有指定1 to n的方式。預設就是0開始

7樓:匿名使用者

預設是0

如果在**開頭加上 option base 1 的話 就是以1為下界

求vb二維陣列下標

8樓:匿名使用者

dim maxi as integer

public sub maxnum(n as integer)for i = 0 to ubound(n)if n(i) > maxn then maxn = n(i): maxi = i

next i

end sub

maxi就是

9樓:匿名使用者

是下界吧?

用lbound函式:lbound(array,dim)其中array是陣列名,dim是陣列維數

例如:public sub main()

dim a(1 to 4,6 to 8) as longmsgbox lbound(a, 1) '顯示1msgbox lbound(a, 2) '顯示6msgbox ubound(a, 1) '顯示4msgbox ubound(a, 2) '顯示8end sub

10樓:

private sub command1_click()dim a(1 to 3, -100 to 100) as integer, b(4) as integer

bounda a, b

debug.print "第一維下標為:"; b(1), "第一維上標為:"; b(2), "第二維下標為:"; b(3), "第二一維上標為:"; b(4)

end sub

public sub bounda(a() as integer, b() as integer)

b(1) = lbound(a, 1)

b(2) = ubound(a, 1)

b(3) = lbound(a, 2)

b(4) = ubound(a, 2)

end sub

vb:如何返回vb一維陣列某個元素所對應的下標的值?

11樓:匿名使用者

array(arglist)

所需的 arglist 引數是一個用逗號隔開的值表,這些值用於給 variant 所包含的陣列的各元素賦值。如果不提供引數,則建立一個長度為 0 的陣列。

說明用來表示陣列元素的符號由變數名、圓括號以及括號中的所需元素的索引號組成。在下面的示例中,第一條語句建立一個 variant 的變數 a。第二條語句將一個陣列賦給變數 a。

最後一條語句將該陣列的第二個元素的值賦給另一個變數。

dim a as variant

a = array(10,20,30)

b = a(2)

使用 array 函式建立的陣列的下界受 option base 語句指定的下界的決定, 除非 array 是由型別庫(例如 vba.array )名稱限定。如果是由型別庫名稱限定,則 array 不受 option base 的影響。

注意 沒有作為陣列宣告的 variant 也可以表示陣列。除了長度固定的字串以及使用者定義型別之外,variant 變數可以表示任何型別的陣列。儘管一個包含陣列的 variant 和一個元素為 variant 型別的陣列在概念上有所不同,但對陣列元素的訪問方式是相同的。

12樓:匿名使用者

但是樓主的問題有漏洞,如果一個陣列中有一些值相同,那麼返回的下標就不止一個。

pxnlxx 的答案是返回的第一個。

用vb語言,遍歷多維陣列時,如何獲取當前元素的下標值?

13樓:網海1書生

這個只能通過一個變數累加,然後從中分解出下標值:

k = 0

for each myd in tdata

i = k \ (ubound(tdata, 1) - lbound(tdata, 1) + 1)    '第一維下標值

j = k mod (ubound(tdata, 2) - lbound(tdata, 2) + 1)  '第二維下標值

print "tdata(" & i & "," & j & ")=" & myd

k = k + 1

next

或者不用遍歷,直接順序讀取即可(在陣列大小已知的情況下,遍歷其實沒啥意義了):

for j = lbound(tdata, 1) to ubound(tdata, 1)

for i = lbound(tdata, 2) to ubound(tdata, 2)

print "tdata(" & i & "," & j & ")=" & tdata(i, j)

next

next

vb中的陣列是什麼

14樓:輕言淺蘇

1.基本概bai念陣列:是同型別變du量的一個有zhi序的集合。

如:a(1 to

100),表示一個dao包含100個陣列專元素屬的名為a的陣列。

2.陣列元素:

即陣列中的變數。用下標表示陣列中的各個元素。

表示方法:陣列名(p1,p2,……)其中p1、p2表示元素在陣列中的排列位置,稱為「下標」。

如:a(3,2)代表二維陣列a中第3行第2列上的那個元素。

3.陣列維數:

由陣列元素中下標的個數決定,一個下標表示一維陣列,二個下標表示二維陣列。 vb中有一維陣列、二維陣列、……最多60維陣列。

15樓:匿名使用者

陣列,不好說他來

是什麼東西

這樣源理解吧

有10個學生,都用baistudent來表示那可以定義為du

dim student(10) as string定義了一個有zhi10個元素的陣列dao,如用來存放名字如果要呼叫第一個學生的名字

student(0) '//預設是用0為基本下標的所以上面定義的那個陣列包含的元素有

student(0)到student(9)這10個如果要改下標,可以用

redim student(20)

這樣就把陣列student的元素改為20個瞭如果不想用0為基本下標

那這樣定義

dim student(1 to 10) as string這樣,定義的陣列包含的元素就為

student(1)到student(10)這十個

16樓:匿名使用者

就是一大堆的陣列隊~~好比網遊裡的玩家組隊~~有什麼事一起上~

17樓:匿名使用者

a(50)一維陣列

a(x,y)二維陣列

在vb中陣列控制元件下標(index)可以是負數嗎,還有陣列下標可以是負數嗎

18樓:匿名使用者

vb中陣列的下標可以由使用者自己具體定義為從負數開始,但如果使用者不進行自行定義,那系統預設為下標從0開始。不管怎樣,下界數值一定要小於下界數值,這個應該好理解,對吧!

19樓:匿名使用者

陣列控制元件下標不能使負的,最小從0開始,但也不一定非要從0開始,也不一定要連貫,比如兩個label1控制元件,第一個下標是2,第二個下標可以使20等等

陣列下標可以是負數,系統只算區間的個數,但沒有說明從幾開始,預設是0.比如:dim a(-1 to 5,10) as long

那麼a陣列為兩維陣列,第一維從-1到5共7個元素,第二維從0到10共11個元素。

20樓:匿名使用者

不允許,陣列控制元件的下標用來標識陣列控制元件中的控制元件元素,它是從0開始的

21樓:匿名使用者

不可以的 負數會出現無效屬性值

C語言陣列下標越界問題,C語言二維陣列下標越界問題

光輝歲月 首先 陣列下標是從0開始的 所以a 的下表是從0 9的,即a 10 a 9 是錯誤的。a指的是a 9 後面的那個儲存單元的的數值。其次 void fun int a,int n,int m 這個j是多餘的。 void fun int a,int n,int m 第一個括號是全形的括號!還有...

VB陣列操作,VB怎麼宣告陣列

能你的例子 希望對你有幫助 dim a 3 as integer dim i as integer a 0 1 a 1 2 a 2 3 a 3 4 for i o to 3 text1.text text1.text a i next i vb怎麼宣告陣列 如果有規律就可以用for next 來賦值...

VB下標籤內容修改

有個ini檔案的操作類,你google上找一下,使用很方便,專門用來讀寫ini配置檔案的。很不錯。 如果通過form2裡面的text1來修改其內容這個很簡單!但是你要下次再生效你必須生成一個txt讀取配置才可以的!怎麼更改vb中label標籤文字的大小 四舍 入 更改vb中label標籤文字的字型 ...