c++ - C++ 中是否有实际的 8 位整数数据类型

标签 c++ integer

在 c++ 中,特别是 cstdint 头文件中,有一些 8 位整数类型,结果证明是带有 typedef 的 char 数据类型。谁能建议一个实际的 8 位整数类型?

最佳答案

是的,你是对的。 int8_tuint8_t 在 1 字节为 8 位的平台上是 typedefchar。在没有的平台上,将给出适当的定义。

以下答案基于 char 为 8 位

的假设

char 包含 1 个字节,根据实现可以是 signedunsigned

所以 int8_tsigned char 并且 uint8_tunsigned char,但是这样使用 int8_t 是安全的/uint8_t 作为实际的 8 位整数,而无需过多依赖实现。

从实现者的角度来看,typedeffing 其中 char 是 8 位是有意义的。

看到这一切,使用 int8_tuint8_t 作为真正的 8 位整数是安全的。

关于c++ - C++ 中是否有实际的 8 位整数数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35246212/

相关文章:

c++ - 使用两个不同大小的一维数组制作二维数组

c++ - 我在C++中创建可除数为30的数字的函数

java - 如何构建 Apache Commons Lang Range<Integer> 对象?

python - 过滤 Pandas 数据框列中的字符串/ float /整数值

c++ - Qt可执行错误-dll库

c++ - 使用 C++17 或更高版本对 vector 中的元素对求和的大多数 'functional' 方法?

c++ - double vector 的排序 vector

c++ - 两次读取文本文件中的一行

c++ - 在 CPP 中取反 INT_MIN

c - 在C中将整数显示为十六进制