C++bool a:1;这个怎么解释?

Posted Treysure

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++bool a:1;这个怎么解释?相关的知识,希望对你有一定的参考价值。

Bit field, 位域。


意思大概就是你虽然声明自己是个bool(8bit),但我可以只占1bit的空间。

#include<iostream>
using namespace std;

struct S1

    bool b1    :1;
    bool b11    ;1;
    bool b111   :1;
    unsigned a  :20;
    unsigned b   :10;

节省内存,bool变量只需要1bit,编译器会帮助做位运算以保证赋值和取值都是正确的,但不能再取得地址了。

以时间换空间




以上是关于C++bool a:1;这个怎么解释?的主要内容,如果未能解决你的问题,请参考以下文章

c++的问题: 字符串如何转bool型

一下是c语言的一段代码,我很难理解,尤其是有关bool的,求注释解释。感谢!

C语言中bool是占用1字节吗?如果只占用一位怎么做呢?

bool在c语言中是啥意思?

C中_Bool和bool类型的区别?

c++ bool型函数的调用