首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb 实时异常"9" 下标越界

2012-01-20 
vb 实时错误9 下标越界Private Sub MSComm1_OnComm()Dim rcv_array() As ByteDim strkk As StringDim ss

vb 实时错误"9" 下标越界
Private Sub MSComm1_OnComm()
Dim rcv_array() As Byte
Dim strkk As String
Dim ss As String
Dim rcv_len, i, j As Integer
rcv_array = MSComm1.Input
rcv_len = UBound(rcv_array)
ReDim rcv_array(0 To UBound(rcv_array)) As Byte
rcv_array = MSComm1.Input
For i = 1 To rcv_len 
 
If Hex(rcv_array(i)) = "FF" Then




在最后这句 Hex(rcv_array(i)) 时 就会提示错误
不知道 怎么回事


[解决办法]
rcv_len = UBound(rcv_array) 这是第一次 Input 返回数组的上界,再次调用 rcv_array = MSComm1.Input 数组的上界已经变化,再用旧的上界进行循环遍历当然可能越界了。
[解决办法]

rcv_len = UBound(rcv_array) 有可能是 0,即只有 1 个成员。索引 1 当然就越界了。

热点排行