【发布时间】:2015-04-19 12:10:04
【问题描述】:
虽然int 的大小取决于 CPU,但long 似乎是 32 位 (?)。但是对于大小并不重要的数字使用 int 似乎非常直观,例如在 for 循环中。
C++ 同时具有long 和__int32 也令人困惑。那么第二个是什么?
问题:在什么情况下我应该使用什么数字类型?
【问题讨论】:
-
不,long 并不总是 32 位...
-
long 不小于 int。至少 32 位。
-
我真的很喜欢 C# 的数据类型。它们总是一样的,无处不在。在 C++ 中,我什至不确定是否应该使用
int。 -
标准库中有fixed-size integers。
-
如果 C++ 标准要求类型的固定大小,那么创建一个 12、18、24、36 等位系统的编译器将是一件痛苦的事情。
__int32和__int64不是标准类型