【发布时间】:2019-07-21 18:44:52
【问题描述】:
C99 标准是否要求符合标准的编译器定义(并且可用)64 位int64_t?或者它是可选的,并且恰好由所有流行的编译器定义?我显然是在专门询问 CPU 无法直接处理 64 位值的平台,但问题更笼统
我无法从C data types Wikipedia page 或this answer 中找到相关问题。
【问题讨论】:
-
不确定 C99,但
int64_t在 C11 中绝对是可选的,除非不是。有关详细信息,请参阅 C11 规范的第 7.20.1.1 节。 -
@user3386109:麻烦给个链接好吗?此外,您的措辞相当神秘。
-
对不起,我没有链接。但是C11规范的草案网上是免费的,搜索
N1570可以找到 -
Link to C11 draft。这些类型是可选的,但如果机器架构具有适当的类型,则应提供,如果某些整数类型具有相同的特征,则必须提供。
-
无论如何,答案是“不”。你不能指望现有的类型。
标签: c 64-bit language-lawyer c99