基于以下 C++ Header 内容:
typedef struct {
char myVar[30][50];
}MyStruct;
extern "C" int WINAPI MyFunction(MyStruct *Configuration,int *CfgSize);
我在网上找了很多例子,但没有一个使用结构数组中的矩阵变量作为参数。
有人可以告诉我如何在 C# 中使用这个函数吗?
基于以下 C++ Header 内容:
typedef struct {
char myVar[30][50];
}MyStruct;
extern "C" int WINAPI MyFunction(MyStruct *Configuration,int *CfgSize);
我在网上找了很多例子,但没有一个使用结构数组中的矩阵变量作为参数。
有人可以告诉我如何在 C# 中使用这个函数吗?
为了编组这个数组成员,您只需要将其展平为它所代表的 1500 个元素
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct MyStruct {
/// byte[1500]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst=1500, ArraySubType=UnmanagedType.I1)]
public byte[] myVar;
}
在 C# 中使用时,请确保myVar
手动初始化数组