vb 二维数组赋值并读取? 10

Dimdd=Array(Array(1,2,3),Array(4,5,6),Array(7,8,9))Debug.Printd(1,1)为什么Debug.Printd(1... Dim d
d = Array(Array(1, 2, 3), Array(4, 5, 6), Array(7, 8, 9))
Debug.Print d(1, 1)

为什么Debug.Print d(1, 1)这一句老是出错啊?
展开
 我来答
程序员小助手
2020-09-22 · 互联网 独立开发 INTJ Automa | 自动化 | R...
程序员小助手
采纳数:16 获赞数:25

向TA提问 私信TA
展开全部

结论:数组声明方式和访问方式不同导致

先贴一个测试通过的数组遍历方式的代码:

二维数组遍历

注意遍历使用的方法,两层数据,每次的访问方式,是直接对该元素数组填写索引值获取。

所以你的正确访问方式是:

Debug.Print d(1)(1)


补充知识:为什么使用二维数组的方式访问不到?

因为这与数组的声明方式有关。本题目中使用 Dim d 的方式,声明了一个variant类型的变量。

variant data type

接着赋值的时候,给与了一个二维数组,所以范文方式必须与赋值方式持平。


如何正确使用一个二维数组?

官方文档给出的方式,是显式声明数组的维度,并挨个赋值。VB就是这样。比如下面的示例:

二维数组的声明和使用

写在最后

总而言之,使用明确的数据类型声明二维数组,是根据索引正确访问数组的关键。


我是@程序员小助手,持续分享编程知识,欢迎关注。

己曼寒SR
2020-09-22 · TA获得超过3144个赞
知道大有可为答主
回答量:1759
采纳率:90%
帮助的人:1010万
展开全部

你想使用二维数组 首先得定义一个二维 你代码都是一维的 你将array作为参数代入array中并不能自动生成二维 老老实实redim 挨个赋值 可以用循环去赋值

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
你我之间1313
2020-09-22 · 贡献了超过201个回答
知道答主
回答量:201
采纳率:50%
帮助的人:10.5万
展开全部
你买个PCI接口的固态读取速度2200的速度看它飞起来不再加32Gb内存
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式