打卡学习第十五天

目录

C 位域

如果程序的结构中包含多个开关量,只有 TRUE/FALSE 变量

struct
{
  unsigned int widthValidated;
  unsigned int heightValidated;
} status;

上述结构需要 8 字节的内存空间,但在实际上,在每个变量中,我们只存储 0 或 1。
在结构内使用上述变量,可以定义变量的宽度告诉编译器,使用哪些字节。
如:

struct
{
  unsigned int widthValidated : 1;
  unsigned int heightValidated : 1;
} status;

打卡学习第十五天

位域声明

打卡学习第十五天

位域的定义和位域变量的说明

struct 位域结构名 
{

     变量类型(int,unsigned int,signed int)   位域的名称:位域中位的数量;

};

打卡学习第十五天

注:

一个位域存储在同一个字节中,如一个字节所剩空间不够存放另一位域时,则会从下一单元起存放该位域。也可以有意使某位域从下一单元开始。

struct bs

{
          unsigned a:4;

          unsigned :4;

          unsigned b:4;

          unsigned c:4;

} 

位域的使用
位域变量名.位域名
位域变量名->位域名
打卡学习第十五天

上一篇:paddlepaddle使用多进程报错“(External) CUDA error(3), initialization error.”的解决方法


下一篇:7台不同配置M1 MacBook Pro真实测试