using System; using System.Runtime.InteropServices; public sealed class Program { [StructLayout(LayoutKind.Explicit)] internal struct A { [FieldOffset(0)]public Byte b; [FieldOffset(0)]public Int16 x; } public static void Main() { A a = new A(); a.b = 1; a.x = 2; Console.WriteLine(a.b); } } Result: 2请按任意键继续. . . System.Runtime.InteropServices中LayoutKind还有Auto,Sequential形式.