【发布时间】:2012-05-21 06:33:00
【问题描述】:
在 C 中,在数组中说 A[2][3] 最右边的索引更改导致最小的内存地址偏移,即元素位于内存中为 A[0][0], A[0][1]...
.NET 中的矩形数组也一样吗?如果我们有,说数组a[2, 3] 是位于内存中的元素a[0, 0], a[0, 1]...?
【问题讨论】:
-
您并没有完全比较可比性。您的 C 数组并不是真正的二维数组,而是数组数组。你也可以在 C# 中做同样的事情:例如
int[][],不是int[,]。 -
@svick 你完全错了。
-
不,这就是二维数组在 C 中的实现方式。它们只是一个一维数组,其元素本身就是一维数组。
-
@CodyGray 除了形式上的定义和概念外,它们直接类似于 C# 中的矩形数组。而 C# 中的
int[][]则完全不同,它类似于 C 中的*int[]。
标签: .net arrays memory multidimensional-array