// cs_operator_bitwise_OR.cs
using System;
class Test 
{
   public static void Main() 
   {
      Console.WriteLine(true ^ false);  // logical exclusive-or
      Console.WriteLine(false ^ false); // logical exclusive-or
      Console.WriteLine("0x{0:x}", 0xf8 ^ 0x3f);   // bitwise exclusive-or
   }
}

解决方案 »

  1.   

    ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/csref/html/vclrfAmpersandOperator.htm
      

  2.   

    可以做一个变通吧,例如在sdk中
    ComStat结构
    typedef struct _COMSTAT 
    {  
       DWORD fCtsHold  :1; 
       DWORD fDsrHold  :1;
       DWORD fRlsdHold  :1;
       DWORD fXoffHold  :1;
       DWORD fXoffSent  :1;
       DWORD fEof  :1;
       DWORD fTxim  :1;
       DWORD fReserved  :25;
       DWORD cbInQue;
       DWORD cbOutQue;

    COMSTAT, *LPCOMSTAT;
    在c#中可以如下声明public enum ComStatFlags 
    {
       fCtsHold = 0x1,
       fDsrHold = 0x2,
       fRlsdHold = 0x4,
       fXoffHold = 0x8,
       fXoffSent = 0x10,
       fEof = 0x20,
       fTxim = 0x40
    }[StructLayout(LayoutKind.Sequential)]
    public  struct COMSTAT
    {
        public ComStatFlags flag; 
        public int cbInQue; 
        public int cbOutQue; 
    }