一个字节中有多少位(任意系统)

Geo*_*aul 1 c++

在8bit!= 1byte的任意系统中如何使用编程找到位数=字节?

我所拥有的是继续左移1直到我得到一些错误的值.但是如何编码呢?

Wyz*_*a-- 7

您可以使用标头中CHAR_BIT定义的宏.它是一个编译时常量,因此您无需在运行时做任何事情来解决它.<climits>

  • 使用编程查询`CHAR_BIT`*是*.究竟你在运营什么限制?(我猜这是一个家庭作业;如果是这样,我会犹豫是否提供太多的帮助.) (2认同)
  • @Wyzard:那不可靠.普通`char`的签名是实现定义的,如果它被签名,则算术溢出具有未定义的行为.从带有值"-1"的`unsigned char`开始,然后右移它直到它达到零. (2认同)