int 和 long 有什么区别?

Yos*_*oss 3 c++

可能重复:
C++ 中 int 和 long 之间有什么区别?
C++ 中 long 与 int 数据类型的区别

在c++中,这就是int和long数据类型之间的区别。编写了以下代码:

int _tmain(int argc, _TCHAR* argv[])
{
    cout<<"Int_Max = "<<INT_MAX<<endl;
    cout<<"Int_Min = "<<INT_MIN<<endl;
    cout<<"Long_Max = "<<LONG_MAX<<endl;
    cout<<"Long_Min = "<<LONG_MIN<<endl;
}
Run Code Online (Sandbox Code Playgroud)

这就是结果......

Int_Max = 2147483647
Int_Min = -2147483648
Long_Max = 2147483647
Long_Min = -2147483648
Run Code Online (Sandbox Code Playgroud)

我很困惑。

cyc*_*130 5

根据标准,int保证至少为16位,long至少为32位。在大多数 32 位编译器上,它们是相同的,都是 32 位。但您不应该指望这一点,因为也有 64 位、16 位甚至 8 位编译器。