VB二维数组批量赋值

C语言中二维数组可以如下赋值:char a[][4]={"ABC","DEF","GHI"};我想在VB中实现(不是一个一个赋值...),写了如下代码dim D%(6,6),i%,j%temp = Array(3, 3, 1, 1, 1, 3, 3 _
, 3, 3, 1, 1, 1, 3, 3 _
, 3, 3, 3, 3, 1, 3, 3 _
, 3, 3, 3, 3, 1, 3, 3 _
, 1, 1, 1, 1, 1, 2, 0 _
, 3, 3, 3, 3, 0, 3, 3 _
, 1, 1, 1, 1, 1, 0, 2)
For J = 0 To 6
For I = 0 To 6
error1: D(I, J) = temp(I, J)
Next
Nexterror1那行出现缺少数组错误,这是为什么?如果多维数组不是这样赋值,那究竟要怎么实现?

第1个回答  2013-07-25
temp = Array(3, 3, 1, 1, 1, 3, 3 _
, 3, 3, 1, 1, 1, 3, 3 _
, 3, 3, 3, 3, 1, 3, 3 _
, 3, 3, 3, 3, 1, 3, 3 _
, 1, 1, 1, 1, 1, 2, 0 _
, 3, 3, 3, 3, 0, 3, 3 _
, 1, 1, 1, 1, 1, 0, 2)
不是这么弄的正确方法:temp = Array(Array( 3, 3, 1, 1, 1, 3, 3 ),
Array( 3, 3, 1, 1, 1, 3, 3 ),
Array( 3, 3, 3, 3, 1, 3, 3 ),
Array( 3, 3, 3, 3, 1, 3, 3 ),
Array( 1, 1, 1, 1, 1, 2, 0 ),
Array(, 3, 3, 3, 3, 0, 3, 3 ),
Array(, 1, 1, 1, 1, 1, 0, 2))
第2个回答  2013-07-25
array()貌似只能一维了temp(0) = Array( 3, 3, 1, 1, 1, 3, 3 )
temp(1) =Array( 3, 3, 1, 1, 1, 3, 3 )
temp(2) =Array( 3, 3, 3, 3, 1, 3, 3 )
temp(3) =Array( 3, 3, 3, 3, 1, 3, 3 )
temp(4) =Array( 1, 1, 1, 1, 1, 2, 0 )
temp(5) =Array(, 3, 3, 3, 3, 0, 3, 3 )
temp(6) =Array(, 1, 1, 1, 1, 1, 0, 2)