32位和64位环境之间的INT_MAX
是否不同?虽然我听说有人说64位环境只使用32位环境的INT_MAX,但似乎情况确实如此。
答案 0 :(得分:5)
这取决于系统。在英特尔Linux上,它们是相同的。检查limits.h
答案 1 :(得分:0)
你的问题可能过于笼统,但在典型的64位环境(x86-64)中,int与386的大小相同(请记住,这也取决于操作系统,而不仅仅是架构)。 C标准仅限制下限(如wiki所述)。
答案 2 :(得分:0)
对于某些编译器,long
类型存在差异。也就是说,long
在编译32位时为32位,否则为64位,而int
在两种情况下均为32位。
但是根据你想要的,你的问题的答案可能是使用int64_t
(或等同于你的编译器,可能是__int64
或类似的东西)如果你想确定你有一个64位的int。
所以你应该澄清你的问题。