结构定义如下:
struct {
unsigned int R2_HD205_Entry_HMD_Pick_Up_FB_bit:1;
unsigned int R2_HD205A_Entry_HMD_Pick_Up_FB_bit:1;
unsigned int R2_HD206_Entry_HMD_Pick_Up_FB_bit:1;
unsigned int R2_LS2_Entry_Laser_Velocity_Pick_Up_FB_bit:1;
unsigned int R2_RT204_Entry_Pyrometer_Pick_Up_FB_bit:1;
unsigned int R2_HD207A_Entry_HMD_Pick_Up_FB_bit:1;
unsigned int R2_HD207B_Entry_HMD_Pick_Up_FB_bit:1;
unsigned int R2_E2_Mill_Pick_Up_FB_bit:1;
unsigned int R2_R2_Mill_Pick_Up_FB_bit:1;
unsigned int R2_Exit_Width_Gague_Pick_Up_FB_bit:1;
unsigned int R2_RT205_Exit_Pyrometer_Pick_Up_FB_bit:1;
unsigned int R2_HD208_Exit_HMD_Pick_Up_FB_bit:1;
unsigned int R2_LS3_Exit_Laser_Velocity_Pick_Up_FB_bit:1;
unsigned int R2_HD209_Exit_HMD_Pick_Up_FB_bit:1;
unsigned int R2_HD210_Exit_HMD_Pick_Up_FB_bit:1;
unsigned int R2_Last_Pass_Pick_Up_FB_bit:1;
unsigned int R2_R2_Exit_Pyrometer_UnderView_FB_bit:1;
unsigned int R2_R2_Emergency_Stop_FB_bit:1;
unsigned int R2_R2_Fast_Stop_FB_bit:1;
unsigned int R2_E2_Roll_Shift_Ok_FB_bit:1;
unsigned int R2_R2_Working_Roll_Shift_Ok_FB_bit:1;
unsigned int R2_R2_Backup_Roll_Shift_Ok_FB_bit:1;
unsigned int R2_AWC_Used_REF_bit:1;
unsigned int R2_AWC_Short_Path_Used_REF_bit:1;
unsigned int R2_AWC_Temperature_Expiate_Used_REF_bit:1;
unsigned int R2_AWC_Shape_Expiate_Used_REF_bit:1;
} Bits;这种位变量结构如何定义??急啊

解决方案 »

  1.   

    pascal 没有 BitField概念,不能完全转换。
      

  2.   

    在存储空间不再是瓶颈的时代,使用bit不会带来什么优势,因为这类的bit操作比DWORD操作来费时间。除非你的这个记录有非常非常多,需要考虑存储效率。
      

  3.   

    type
      Bits = Record
        R2_HD205_Entry_HMD_Pick_Up_FB_bit:DWORD;
        R2_HD205A_Entry_HMD_Pick_Up_FB_bit:DWORD;
        R2_HD206_Entry_HMD_Pick_Up_FB_bit:DWORD;
        R2_LS2_Entry_Laser_Velocity_Pick_Up_FB_bit:DWORD;
        R2_RT204_Entry_Pyrometer_Pick_Up_FB_bit:DWORD;
        R2_HD207A_Entry_HMD_Pick_Up_FB_bit:DWORD;
        R2_HD207B_Entry_HMD_Pick_Up_FB_bit:DWORD;
        R2_E2_Mill_Pick_Up_FB_bit:DWORD;
        R2_R2_Mill_Pick_Up_FB_bit:DWORD;
        R2_Exit_Width_Gague_Pick_Up_FB_bit:DWORD;
        R2_RT205_Exit_Pyrometer_Pick_Up_FB_bit:DWORD;
        R2_HD208_Exit_HMD_Pick_Up_FB_bit:DWORD;
        R2_LS3_Exit_Laser_Velocity_Pick_Up_FB_bit:DWORD;
        R2_HD209_Exit_HMD_Pick_Up_FB_bit:DWORD;
        R2_HD210_Exit_HMD_Pick_Up_FB_bit:DWORD;
        R2_Last_Pass_Pick_Up_FB_bit:DWORD;
        R2_R2_Exit_Pyrometer_UnderView_FB_bit:DWORD;
        R2_R2_Emergency_Stop_FB_bit:DWORD;
        R2_R2_Fast_Stop_FB_bit:DWORD;
        R2_E2_Roll_Shift_Ok_FB_bit:DWORD;
        R2_R2_Working_Roll_Shift_Ok_FB_bit:DWORD;
        R2_R2_Backup_Roll_Shift_Ok_FB_bit:DWORD;
        R2_AWC_Used_REF_bit:DWORD;
        R2_AWC_Short_Path_Used_REF_bit:DWORD;
        R2_AWC_Temperature_Expiate_Used_REF_bit:DWORD;
        R2_AWC_Shape_Expiate_Used_REF_bit:DWORD;
      end;试试这个
      

  4.   

    同意pazee(耙子), 完全可以用DWORD来替代
      

  5.   

    同意  rwdx(任我独行之浪迹天涯) !!!
      

  6.   

    这样定义干嘛?叫你的同事直接定义 DWORD,一个 DWORD 可以管现在的 32 个 即可
      

  7.   

    看错了 实际上一个 DOWRD 就行的东西,干嘛要使用结构?