两个一维数组
a(10) b(10)

将数组a,b合成一个数组只能用循环法变为一个c(10,2)数组吗.

解决方案 »

  1.   

    我认为a(10) 和b(10) 要是合并成一个一维数组,可以c=array(a(10),b(10))要是合并成一个二维数组只能用循环赋值,别无它法,也许不对.
      

  2.   

    Option ExplicitPrivate Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)Private Sub Form_Load()
        Dim a(1 To 10) As Long
        Dim b(1 To 10) As Long
        Dim c() As Long
        Dim i As Long, j As Long
        
        For i = 1 To 10
            a(i) = i
            b(i) = 10 - (i - 1)
            
            Debug.Print a(i), b(i)
        Next i
        
        ReDim c(1 To 10, 1 To 2) As Long
        
        CopyMemory c(1, 1), a(1), 10 * 4  '4 = Long 类型的长度, 10 = 数组中一共有10个项目
        CopyMemory c(1, 2), b(1), 10 * 4
        
        For i = 1 To 10
            Debug.Print "c(" & i & ", 1) = " & c(i, 1)
        Next i
        
        For i = 1 To 10
            Debug.Print "c(" & i & ", 2) = " & c(i, 2)
        Next i
    End SubWinXP SP3 + VB6 测试通过
      

  3.   

     1             10 
     2             9 
     3             8 
     4             7 
     5             6 
     6             5 
     7             4 
     8             3 
     9             2 
     10            1 
    c(1, 1) = 1
    c(2, 1) = 2
    c(3, 1) = 3
    c(4, 1) = 4
    c(5, 1) = 5
    c(6, 1) = 6
    c(7, 1) = 7
    c(8, 1) = 8
    c(9, 1) = 9
    c(10, 1) = 10
    c(1, 2) = 10
    c(2, 2) = 9
    c(3, 2) = 8
    c(4, 2) = 7
    c(5, 2) = 6
    c(6, 2) = 5
    c(7, 2) = 4
    c(8, 2) = 3
    c(9, 2) = 2
    c(10, 2) = 1
    这是输出内容
      

  4.   

    http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=67820&lngWId=1
      

  5.   


    老兄看清楚好不好,楼主的问题,是怎么将数组a和b合并到c,而没有说如何赋值到a和b
    我的循环只是将数组a和数组b赋值和输出赋值后的变量值,方便用CopyMemory做例子
    如果你不先把数组a和b赋值,那么使用CopyMemory操作后,你怎么知道有没有操作成功?
      

  6.   

    ReDim c(1 To 10, 1 To 2) As Long
        
    CopyMemory c(1, 1), a(1), 10 * 4  '4 = Long 类型的长度, 10 = 数组中一共有10个项目
    CopyMemory c(1, 2), b(1), 10 * 4这三行才是关键,请你告诉我一下,这里哪里有循环了?
      

  7.   


    谢谢,这应该是多个一维数组借用功能函数CopyMemory (API技术),合为多维数组的解法之一