vb串口通信用于接收数据的数组无法重新定义
PrivateSubMSComm1_OnComm()Dima%,k%,i%Dimbuf()AsByteSelectCaseMSComm1.CommEventCasecom...
Private Sub MSComm1_OnComm()
Dim a%, k%, i%
Dim buf() As Byte
Select Case MSComm1.CommEvent
Case comEvReceive
k = MSComm1.InBufferCount
Print "k="; k
' ReDim buf(1 to k) As Byte
buf = MSComm1.Input
Print "UBound(buf)="; UBound(buf)
Print "lBound(buf)="; LBound(buf)
部分程序如图所示 无论redim部分如何更改 打印出来的 LBound(buf)始终等于0,UBound(buf)等于接收到的字节数减一。求解 展开
Dim a%, k%, i%
Dim buf() As Byte
Select Case MSComm1.CommEvent
Case comEvReceive
k = MSComm1.InBufferCount
Print "k="; k
' ReDim buf(1 to k) As Byte
buf = MSComm1.Input
Print "UBound(buf)="; UBound(buf)
Print "lBound(buf)="; LBound(buf)
部分程序如图所示 无论redim部分如何更改 打印出来的 LBound(buf)始终等于0,UBound(buf)等于接收到的字节数减一。求解 展开
3个回答
展开全部
ReDim buf(1 to k) 这是什么语法???
数组0起始,有什么问题吗???
数组0起始,有什么问题吗???
追问
想让buf数组的下标从一开始,我使用option base 1也不行。从0开始没问题,只是好奇为什么在这个地方不能从1开始,其他的数组测试却可以,莫非真是MsComm控件内规定的?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-24
展开全部
K 取值有 数据决定
最小可能取值多少? 莫非为 0?
最小可能取值多少? 莫非为 0?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询