我需要一个数组,数组中的每个项都是这样的字节数组,但我不知道如何做:
Dim xx as array
xx(0) *as byte* = {&H12, &HFF}
xx(1) *as byte* = {&H45, &HFE}
答案 0 :(得分:9)
您可以像这样制作嵌套或“锯齿状”的字节数组:
Dim myBytes(6)() As Byte
这将创建一个6字节数组的空数组。外部数组中的每个元素都是Nothing
,直到为其分配数组,如下所示:
myBytes(0) = New Byte() { &H12, &Hff }
然而,制作一个List
字节数组可能是个更好的主意,如下所示:
Dim myBytes As New List(Of Byte())
这将创建一个空字节数组列表,在你将一些字节数组放入其中之前它将保持为空,如下所示:
myBytes.Add(New Byte() { &H12, &Hff })
与嵌套数组不同,List(Of Byte())
会自动扩展以容纳您放入的字节数组。
有关更具体的建议,请告诉我们您要做的事情。
答案 1 :(得分:2)
有关详细信息,请参阅this MSDN topic。
这是定义多维数组的代码:
Dim lotsaBytes(2,4) As Byte
并初始化它:
Dim lotsaBytes(,) As Byte = New Byte(2, 4) {{1, 2}, {3, 4}, {5, 6}, {7, 8}}
答案 2 :(得分:0)
您可以使用以下VB.NET示例解决您的问题。只需拖放一个按钮和一个文本框即可。按钮点击事件中的代码如下:
Private Sub btnCalcBcc_Click(sender As System.Object, e As System.EventArgs) Handles btnCalcBcc.Click
Dim BCC As Int16
Dim Bcc2 As Int16
Dim arr() As Byte = {&H1B, &H58, &H41, &H42, &H43, &H44, &H45, &H46, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H17, &H0, &H0, &H0, &H0}
For i As Integer = 0 To arr.Length - 1
BCC = BCC Xor arr(i)
BCC = BCC << 1
Bcc2 = (BCC >> 8)
Bcc2 = Bcc2 And &H1
BCC = BCC + Bcc2
Next
txtBCC.Text = BCC
End Sub