C / C++ には「共用体」(union) というのがありますが、C# にはありません。 ですが、属性 StructLayout(LayoutKind.Explicit) と FieldOffset を使って実現は可能です。 MSDN にも解説があります。 以下にサンプルを示します。 using System; using System.Runtime.InteropServices; // C# 共用体のテスト public class UnionTest { public static void Main() { var bytes = new TBytes(); bytes.Word = 0x12345678; Console.WriteLine("{0:x}", bytes.Byte0); // 78 Console.WriteLine("{0:x}", bytes.Byte1)
