帮看看这个VB中的越值的小问题

来源:百度知道 编辑:UC知道 时间:2024/06/27 23:28:29
Private Sub Form_Load()
Show
Static a
a = Array("1", "2", "3", "4")
Print "a(4)的值为:" & a(4)
End Sub
为什么Static a 语句没有对a限定它的元素的个数呀?默认的话也是5个。
a = Array("1", "2", "3", "4") 也只是对a初始化了,没有限定它的个数呀?
为什么这里4就不行了呢

呵呵.VB数组的最基本游戏规则 呵.. 就是默认数组是从0开始计数的

无论你是用array方式得到的数组,还是用split得到的数组,都不能违背这个规则 的..

如上所说,,除非你事先声明Option Base 1
这样才能上数组是从1开始的..

或是你可以先使用ubound(a)来测试一下数组的最大下标,也要以得到数组的元素个数的..

然后,你没有声明数组的元素个数的话,直接使用本身就是一种错误呵..

比如,dim a
然后print a(5)
这样就肯定是出错的!!!
呵呵,为什么非要你说的.默认就是5个元素呢? 呵呵.

在最上面也就是通用声明那加一行
Option Base 1

你用枚举的方法给数组赋值,而且元数个数为4,当然为 a(0) 至a(3) 了, a(4) 肯定下标超界了