从:
http://www.developerfusion.com/article/84519/mastering-structs-in-c/
建议将结构中的字节数组声明为单个字节,然后使用 FieldOffset 为数组分配内存。一旦分配了内存,就可以使用指针算法访问数组。
例子:
[StructLayout(LayoutKind.Explicit, Pack = 1, Size = 1300)]
public struct TGLProtocolBuffer
{
[FieldOffset(0)]
public byte StartByte;
[FieldOffset(1)]
public byte MessageNumber;
[FieldOffset(2)]
public UInt16 Command;
[FieldOffset(4)]
public UInt32 UnitID;
[FieldOffset(8)]
public UInt16 DataLength;
[FieldOffset(10)]
public byte Data;
};
我想使用 Array.Copy 对此内存进行操作,但需要将结构中定义的数组转换为字节到字节 []
如何将字节转换为字节 []?