-1

我想创建我自己的仅包含两个值 0 和 1 的变量。我想创建仅包含两个数字 0 和 1 的变量,它将等于 2 位,一位代表 1,一位代表 0

4

2 回答 2

0

我建议您使用bool布尔值。

要强制编译器仅使用固定数量的位,请使用位域:

struct onebit { int data: 1 };

但是,这很可能仍需要内存中的一个字节。

于 2013-01-20T12:59:30.790 回答
0

尽管您可以bool在结构中使用位字段,但可以使用枚举(仅限制 2 个值)。但是你不能限制这种类型的内存使用。它仍然需要程序堆栈(或堆)上的至少 1 个字节。

所以,如果你有:

struct OneBit
{
   short OnOrOff : 1;
};

的大小OneBit仍然是 1 字节(最小!)。

于 2013-01-20T16:18:20.200 回答