long long整型有两种:long long和unsigned long long。在c++11中,标准要求long long可以在不同平台有不同尺寸,但是至少有64位。使用方法如下:
long long int lli = -9000000000000000000LL;
unsigned long long int ulli = 9000000000000000000ULL;
同时下面的类型是等价的:long long, signed long long, long long int;而unsigned long long和unsigned long long int也是等价的。
要了解平台上long long的大小,可以查看<climits>或者<limits.h>中的宏,包括LLONG_MIN、LLONG_MAX和ULLONG_MAX,示例如下:
#include <climits>
#include <cstdio>
using namespace std;
int main(){
long long ll_min = LLONG_MIN;
long long ll_max = LLONG_MAX;
unsigned long long ull_max = ULLONG_MAX;
printf("min of long long: %lld\n", ll_min);
printf("max of long long: %lld\n", ll_max);
printf("max of unsigned long long: %llu\n", ull_max);
}
在我的机器上输出的是
min of long long: -9223372036854775808
max of long long: 9223372036854775807
max of unsigned long long: 18446744073709551615