c++ - C/C++ 中整数类型别名的标准保证?例如。 : Is "unsigned" always equal to "unsigned int"?

标签 c++ c types integer alias

第一个问题:

  • “无符号”总是与“无符号整数”相同吗?
  • “signed”总是与“int”相同吗?
  • “short”总是与“signed short”相同吗?
  • 是……

第二个问题:

如果 C/C++ 标准规定了上述问题的答案,哪些段落与这些问题相关?

最佳答案

是的,这些都是有保证的。在 C++11 中,请参阅 §7.1.6.2[dcl.type.simple]/table 10,其中列出了所有简单类型说明符(及其组合)及其含义。例如,该表包括以下内容:

unsigned      => unsigned int
unsigned int  => unsigned int

signed        => int
signed int    => int
int           => int

C11 在 §6.7.2/2 中有类似的映射(它的格式不同,但除此之外它指定了相同的等效组合组,至少对于 C 和 C++ 共有的所有类型)。

关于c++ - C/C++ 中整数类型别名的标准保证?例如。 : Is "unsigned" always equal to "unsigned int"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12901170/

相关文章:

c++ - 不是 'tagINPUT' 的成员

c++ - openmpi mpmd 获取通信大小

python - 将 Python 结构的地址传递给 C 函数

c - 每个 fork 进程的不同输入/输出流

c - Linux 信号处理。如何获取中断指令的地址?

PHP 非法数组键类型警告 (PHPStorm)

c++ - Lua C API 自定义打印函数,字符串中传入空格时不调用

c++ - 编译简单的 Hello World 时出现多个 "multiple definition of ..."

java - 在泛型类中扩展 Interface 时出现 NoSuchFieldError

Java byte 将值错误字符串插入到字节