gpt4 book ai didi

c++ - 位域内存

转载 作者:行者123 更新时间:2023-11-28 00:16:36 25 4
gpt4 key购买 nike

如果我这样声明

struct S{
unsigned int bit:4;
}

它是如何工作的?

  1. 我在内存中分配了 2 个字节(结构的大小(从这里得到这个大小 http://en.cppreference.com/w/cpp/language/bit_field )但只使用了其中的 4 位,并且该结构中的其他内存被浪费了。
  2. 我只分配了 4 位,仅此而已。

我对此很困惑,在任何地方都找不到关于此的任何信息。

最佳答案

当你写作时

S s;

你分配了 sizeof (S) 字节,在你的情况下似乎是 2。
事实上,您只使用该空间的 4 位并不会改变大小。

关于c++ - 位域内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29867822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com