【问题标题】:Can i create a classic VB array in C#?我可以在 C# 中创建一个经典的 VB 数组吗?
【发布时间】:2014-08-28 19:18:28
【问题描述】:

我是 .net 的新手,我必须将一些旧的 vb 代码转换为 c#。

我不明白这是什么数据?

Dim b(0 To 3) As Byte
b(0) = &H4A
b(1) = &H46
b(2) = &H49
b(3) = &H43

http://visualstudiomagazine.com/articles/2010/03/16/searching-within-byte-arrays.aspx

当我尝试做类似Byte a = &H49; 之类的事情时,它是不允许的。

什么是 &H4A ?我可以在 C# 中创建这些值的再见数组吗?

【问题讨论】:

    标签: c# vb.net bytearray


    【解决方案1】:

    &H 在 vb 中用于表示十六进制文字。在 c# 中,您将使用 0x。所以&H4A变成0x4A

    你的整个字节数组可以写成:

    byte[] b = new byte[4];
    b[0] = 0x4A;
    // ....etc
    

    甚至:

    byte[] b = new byte[] { 0x4A, 0x46, 0x49, 0x43 };
    

    【讨论】:

      【解决方案2】:

      是的,你可以在 vb 中这样做:

        byte[] b = new byte[4];
        b[0] = 0x4a;// 74
        b[1] = 0x46;//70
        b[2] = 0x49;//73
        b[3] = 0x43;//67
      

      【讨论】:

        【解决方案3】:

        您可以通过键入TypeOfarray[] arrayname = new TypeOfarray[lengthofarray]; 使用内置声明方法,并通过键入arrayname[index] = value; 为特定项目分配值。

        注意:

        C# 中的数组像 VB.net 一样是零索引的,这意味着第一个索引默认为 0。

        【讨论】:

        • 问题中的示例明确将数组的下索引设置为 0,如果您真的,真的 想要。如果您没有明确指定下限,则 vb 中的默认值取决于是否包含 Option Base
        猜你喜欢
        • 1970-01-01
        • 2012-03-10
        • 2011-05-31
        • 1970-01-01
        • 1970-01-01
        • 2021-10-17
        • 1970-01-01
        • 1970-01-01
        • 2020-08-10
        相关资源
        最近更新 更多