C# 请问结构体里定长二维数组怎么定义?

在结构体里,定长一维数组是这样定义的:

[MarshalAsAttribute(UnmanagedType.ByValArray,SizeConst = 100)]
public int [] Len;

那定长二维数组public int [ , ] Len = new int [100 , 100] 怎么定义?
请高手支小招!谢谢,小弟没有分了!

第1个回答  2012-12-14
同上,其实二维就是一维。

[MarshalAsAttribute(UnmanagedType.ByValArray,SizeConst = 10000)]
public int [,] Len;本回答被提问者和网友采纳
第2个回答  2012-12-10
结构体里面不能初始化,可以声明变量
struct A
{
public string [,] myArray ;//默认private

}

A a=new A();
a.myArray=new string[100,20];
a.myArray[0,0]="1";追问

可以的,因为定长的一维数组我都是实现了,所以是可以的,就是我那样写!
我之所以要这样写,是因为结构体长度是固定的,如果没有固定,则无法进行内存拷贝,
因为需要将数据发送到别人用C语言写的程序上,同时结构体里的成员不一个二个的,而是几十个,还有更多的,所以必须整体拷贝,直接还原数据!
我所说的这些都已经实现了,不过都是一维的,现在想改二维,但不知道怎么写,所以请高手指点一下!