
C#调用C的结构体
C语言中定义了一个结构体的实例__declspec(dllexport)device_library_t__device_library__={"Genericuartd...
C语言中定义了一个结构体的实例
__declspec(dllexport) device_library_t __device_library__ =
{
"Generic uart device library",
};
我怎么在C#里调用这个结构体里的数据 展开
__declspec(dllexport) device_library_t __device_library__ =
{
"Generic uart device library",
};
我怎么在C#里调用这个结构体里的数据 展开
1个回答
展开全部
先把你的C结构体定义成类似如下结构:
[StructLayout(LayoutKind.Explicit, Size = 33)]
private struct Maint_status_struct_delta
{
[FieldOffset(0)]
public uint raw_user_warn; // 14 parameters
[FieldOffset(4)]
public fixed uint raw_warn[7]; // 7x32 = 224 possible (194 used)
[FieldOffset(32)]
public byte warning;
}// 32 bytes(33 bytes)
然后在C#中直接调用就行了!
[StructLayout(LayoutKind.Explicit, Size = 33)]
private struct Maint_status_struct_delta
{
[FieldOffset(0)]
public uint raw_user_warn; // 14 parameters
[FieldOffset(4)]
public fixed uint raw_warn[7]; // 7x32 = 224 possible (194 used)
[FieldOffset(32)]
public byte warning;
}// 32 bytes(33 bytes)
然后在C#中直接调用就行了!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询