机器上int数据类型的宽度

时间:2012-03-29 09:22:59

标签: c integer-promotion

是否正确地说int数据类型的宽度取决于ALU的数据宽度? 例如,说32位处理器的int数据类型为32位宽是正确的吗? 类似地,对于16位和8位(请注意,C保证int的大小至少为greater than 16 bit)。

2 个答案:

答案 0 :(得分:4)

不,这取决于实施。例如,64位系统的许多编译器仍有32位宽的内存。

答案 1 :(得分:1)

您可能必须参考编译器关于确定基本类型大小的文档,因为基元类型和内置运算符(如sizeof)的详细信息将是编译器特定的。最后,它可能与硬件的细节直接相关,但我相信C的抽象级别高于ALU细节。