在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)
我很困惑。
根据标准,int保证至少为16位,long至少为32位。在大多数 32 位编译器上,它们是相同的,都是 32 位。但您不应该指望这一点,因为也有 64 位、16 位甚至 8 位编译器。