手机
当前位置:查字典教程网 >编程开发 >C语言 >c语言中位字段与结构联合的组合使用详解
c语言中位字段与结构联合的组合使用详解
摘要:举例:===================================================复制代码代码如下:/**INIT...

举例:

===================================================

复制代码 代码如下:

/** 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)

需要注意的是,在二进制中顺序是从右向左,在这个结构体中是从上向下.

【c语言中位字段与结构联合的组合使用详解】相关文章:

string与char*转换的使用详解

深入c语言continue和break的区别详解

C++重载运算符的规则详解

c++中const的使用详解

C++Primer笔记之关联容器的使用详解

从汇编看c++中函数里面的static关键字的使用说明

c语言中static的用法详细示例分析

c语言中 基于随机函数的使用详解

C 语言基础教程(我的C之旅开始了)[五]

C++中的类模板详解及示例

精品推荐
分类导航