十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
VB中定义数组的起始下标默认从0开始。用Option Base 1语句将数组默认起始下标设置为 1。
成都创新互联公司专注于企业成都营销网站建设、网站重做改版、康巴什网站定制设计、自适应品牌网站建设、html5、商城网站建设、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为康巴什等各大城市提供网站开发制作服务。
(1)不使用Optioan Base 语句,数组起始下标默认为 0
Option 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 语句,数组起始下标默认为 1
Option 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,其他值是非法的。
数组中的第一个元素的下标称为下界,最后一个元素的下标称为上界,在VB.NET中,为了和其他语言更加易于协同操作,数组的下界均设定为0,不允许声明一个下界为1的数组,因此Option Base语句不再被VB.NET支持。
肯定的,不然怎么形成数组呢?在VB中的数组下标的下界可以不是0例如ARR(2 TO 8) ,但是在VB.NET2010中下标必须是0开始,而且所有数组都是动态的。
因为这道题只用了a(1,1)到a(5,5)这些数组变量,a(0,0)是nothing
有时需要知道数组的上界值和下界值,这可以通过I,Bound和u:Bound函数来测试。
格式:LBound(数组名[,维])
格式:UBound(数组名[,维])
功能:LBound函数返回一个数组中指定维的下界。uBound函数返回一个数组中指定维的上界。
说明:
(1)格式中的[,维]是指定要测试的数组的某一维。两个函数一起使用,即可确定一个数组的大小。
(2)对于一维数组来说[,维]可以省略。如果要测试多维数组[,维]不能省略
一般说来三者是没有区别的,只是个人喜好而已。
要知道有的时间我们需要数组和下标对应起来,这样看起来更直观一些。比如把10到20的数赋值到数组中,那么数组下标从10到20,不比从0到10方便吗?用代码就可以看出来。
下标从10到20:for i=10 to 20:a(i)=i:next i
下标从0到0:for i=0 to 10:a(i)=i+10:next i
你比较一下,另一个更方便呢?