如何封送包含字符矩阵的数组结构

本文关键字:数组 结构 何封送 包含 字符 | 更新日期: 2023-09-27 18:32:00

基于以下C++标头内容:

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数组