RT,我对此一直有个疑问。以前一直以为long就是介于int和long long之间的大小,但今天试验了一下才发现不一样
电脑位数:64位
测试代码:如下
#include <iostream>
#include <limits>
int main(void)
{
std::cout << "Int\t\t最大值:" << std::numeric_limits<int>::max() << "\t\t最小值:" << std::numeric_limits<int>::min() << std::endl;
std::cout << "Long\t\t最大值:" << std::numeric_limits<long>::max() << "\t\t最小值:" << std::numeric_limits<long>::min() << std::endl;
std::cout << "Long Long\t最大值:" << std::numeric_limits<long long>::max() << "\t最小值:" << std::numeric_limits<long long>::min() << std::endl;
return 0;
}
输出结果:如下
Int 最大值:2147483647 最小值:-2147483648
Long 最大值:2147483647 最小值:-2147483648
Long Long 最大值:9223372036854775807 最小值:-9223372036854775808
那既然int和long是一样的,那么为什么还有一个long?