如题,有这样的必要吗?

解决方案 »

  1.   

    dim Ncb(100) as byte即可
    如果是想处理字符串可以这样:
    Dim Ncb As String * 100
    Ncb = String(100, Chr(0))
      

  2.   

    动用API,先建立一个和NCB结构等长度的byte数组然后copymemory过去!
    HOHO!
      

  3.   

    可不可以这样:
    dim n as byte
    n = 0dim aNCB as NCBcopymemory aNCB,byval n ,Len(aNCB)
      

  4.   

    Option ExplicitPrivate Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
    '建立一个NCB结构
    Private Type NCB
        a As Long
        b As Integer
    End Type
    Private Sub Command1_Click()
        Dim ncbTest As NCB
        Dim aryZero() As Byte
        '创建一个和NCB等长的全0字节数组
        ReDim aryZero(Len(ncbTest))
        '给NCB赋一些初始值看看效果
        ncbTest.a = 123
        ncbTest.b = 456
        'CopyMemory之前的输出测试
        Debug.Print ncbTest.a, ncbTest.b
        CopyMemory ncbTest.a, aryZero(0), Len(ncbTest)
        'CopyMemory之后的输出验证
        Debug.Print ncbTest.a, ncbTest.b
        
    End Sub
    输出: 123           456 
     0             0