VB 的MsComm控件十六进制字符接受问题

PrivateSubMSComm1_OnComm()IfMSComm1.CommEvent=2ThenMSComm1.InputLen=0strBuff=MSComm1.... Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = 2 Then

MSComm1.InputLen = 0
strBuff = MSComm1.Input
sData() = strBuff

For i = 0 To UBound(sData)
If Len(Hex(sData(i))) = 1 Then
strdata = strdata & "0" & Hex(sData(i))
Else
strdata = strdata & Hex(sData(i))
End If
中的for循环是什么意思啊,if。。else 又是什么意思。十六进制接受“E”的话,是接受的&H0E,还是E的ASCII码?有点晕了,算字符长度len(&HE)算一个字节码?
展开
 我来答
报文露4840
2013-02-20 · TA获得超过428个赞
知道小有建树答主
回答量:503
采纳率:50%
帮助的人:415万
展开全部
for循环是根据缓冲区里存储数据的长度 来按位(byte)接收存储到sData() 数组中

因为 byte 存储的是 0~255的整型数据 十六进制显示是 0~FF

if。。else 是将接收的数据 以2位十六进制数存储起来 便于阅读和后续判断

接收的是十六进制的E,是一个字节码。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式