在 c++ 中,特别是 cstdint 头文件中,有一些 8 位整数类型,结果证明是带有 typedef 的 char 数据类型。谁能建议一个实际的 8 位整数类型?
最佳答案
是的,你是对的。 int8_t
和 uint8_t
在 1 字节为 8 位的平台上是 typedef
到 char
。在没有的平台上,将给出适当的定义。
以下答案基于 char 为 8 位
char
包含 1 个字节,根据实现可以是 signed
或 unsigned
。
所以 int8_t
是 signed char
并且 uint8_t
是 unsigned char
,但是这样使用 int8_t 是安全的/uint8_t 作为实际的 8 位整数,而无需过多依赖实现。
从实现者的角度来看,typedef
fing 其中 char 是 8 位是有意义的。
看到这一切,使用 int8_t
或 uint8_t
作为真正的 8 位整数是安全的。
关于c++ - C++ 中是否有实际的 8 位整数数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35246212/