我定义了一个数组,用16进制传送,可是当出现A,F这样的时候,就说类型冲突,数字的时候正常
dim outbyte() as byte
hw as integer
hw = 10
outbyte(1) = CByte(Hex(hw))
outbyte(2) = CByte(Hex(hw))
这时就出现类型冲突
10以下没问题
是怎么回事,在次谢谢了

解决方案 »

  1.   

    hW=A  那样十变量付值给变量
    Hex()函数,它把十进制数值
    转化为十六进制的字符
      

  2.   

    你实在要这么干,那就这样
    dim outbyte() as byte
    hw as integer
    hw = 10
    outbyte(1) = CByte("&H" & Hex(hw))
    outbyte(2) = CByte("&H" & Hex(hw))
    不过,你这样做没什么意义,因为outbyte里面放的本来就是10进制的数,你大费周章的把hw先转成16进制字符串,然后又用cbyte函数转回10进制数值,实在不理解为何要这么做
    其次,hw定义为integer,如果hw的值大于255或小于0时,CByte函数就会出错