求救,如下c语言结构体,如何用C#实现?
typedef   struct 
 { 
 unsigned   short      :10; 
 unsigned   short      a:1;	 
 unsigned   short      b:2;					 
 unsigned   short      c:1;	 
 unsigned   short      d:1; 
 }xxx;   
 谢谢!
------解决方案--------------------public struct Book 
 { 
     public decimal price; 
     public string title; 
     public string author; 
 } 
------解决方案--------------------似乎不能这么定义,只能按照传统方法去转换了
------解决方案--------------------public struct xxx 
     { 
         public ushort a ; 
         public ushort b ; 
         public ushort c ; 
         public ushort d ; 
         public void Init() 
         { 
             a = 1; 
             b = 2; 
             c = 3; 
             d = 4; 
         } 
     }
------解决方案--------------------声明后调用Init进行初时化
------解决方案--------------------楼上,那东西不是初始值……
------解决方案--------------------好像是不能那么定义,可是为什么篇要一模一样地 "翻译 "呢?
------解决方案--------------------public struct xxx 
 { 
   //变量声明       
   //初始化     
 }; 
------解决方案--------------------using System.Runtime.InteropServices;     
     [StructLayout(LayoutKind.Explicit)] 
     public struct xxx 
     { 
         [FieldOffset(0)] 
         private ushort tem; 
         [FieldOffset(10)] 
         public ushort a ;  
         [FieldOffset(11)] 
         public ushort b ; 
         [FieldOffset(13)] 
         public ushort c ; 
         [FieldOffset(14)] 
         public ushort d ; 
     }   
 刚才的是错误的,但这次也不保证正确呀!:)
------解决方案--------------------这样的定义是位定义 
 xxx是15个位 就是两个自己 
 你可以定义成一ushort 
 再用位操作计算
------解决方案--------------------两个字节