//位域结构体的定义示例及其与联合体的定义使用
struct M_FloatDataBit { unsigned char L_0 : 8; //32位的float类型数据的低16位中的低8位 unsigned char L_1 : 8; //32位的float类型数据的低16位中的高8位 unsigned char H_0 : 8; //32位的float类型数据的高16位中的低8位 unsigned char H_1 : 8; //32位的float类型数据的高16位中的高8位 }; union _FloatUnion { M_FloatDataBit BitData; //存储32位数据的位段结构体,数据 float m_floatData; //float类型的数据 }; _FloatUnion m_Data;
CString str; GetDlgItemText(IDC_EDIT_FLOAT_DATA,str); m_Data.m_floatData = atof(str); float f_data = m_Data.m_floatData; str.Format("%02X, %02X, %02X,%02X",m_Data.BitData.L_0,m_Data.BitData.L_1,m_Data.BitData.H_0,m_Data.BitData.H_1); SetDlgItemText(IDC_EDIT_FLOAT_HEX,str);
位域结构体的定义示例及其与联合体的定义使用
最新推荐文章于 2025-04-11 13:35:41 发布