源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

c语言中位字段与结构联合的组合使用详解

  • 时间:2021-01-15 22:58 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:c语言中位字段与结构联合的组合使用详解
举例: ===================================================
[u]复制代码[/u] 代码如下:
/** INITRM - Initialization of internal ram position register; 0x0000 0010 **/ typedef union {    byte Byte;    struct {       byte RAMHAL :1;       byte :1;       byte :1;       byte RAM11 :1;       byte RAM12 :1;       byte RAM13 :1;       byte RAM14 :1;       byte RAM15 :1;    } Bits;    struct {       byte :1;       byte :1;       byte :1;       byte grpRAM_11 :5;    }MergedBits; } INITRMSTR;
那么赋值方式就有三种,比如直接给INITRMSTR赋值 INITRMSTR = 0xEF; 也可以位字段赋值 INITRMSTR.Bits.RAM15 = 1; 也可以多位的位字段赋值 INITRMSTR.MergedBits.grpRAM_11 = 26 (26是十进制,转换成二进制是11010, 直接表示 RAM_11 = 0, RAM_12 = 1, RAM_13 = 0, RAM_14 = 1, RAM_15 = 1) 需要注意的是,在二进制中顺序是从右向左,在这个结构体中是从上向下.
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部