C/C++编程:long long类型

1060 篇文章 300 订阅

数据类型long long是C++11中重新定义的,标准规定它最小是64bit

在这之前为了提供超过32bit的整数,各个开发环境(编译器)分别定义了各自的64bit整数类型。这会导致代码不兼容

现在,C++11直接定义了long long类型

我猜许多人应该使用过这个类型,当然在C++11之前,这种尝试会被编译器无情拒绝,自C++11之后就不会在发生这样地情况了。因此我认为:在C++11新特性中,long long一定是最容易被接受的一个。多数程序员看到它时甚至不会意识到这是一个新特性。

相应的,C++11规定,在指定long long字面值类型时,使用ll或者LL。这也可以从longl或者L推断出来。

另外,也可以像long类型的字面值一样使用U后缀表明这是一个无符号数

2LL

3ll

100ULL

小写的ll虽然合法,但是容易和数字1混淆,还是用大写的吧。

另外,要了解平台上long long大小的方法是查看<climits>或者<limitx.h>中的宏。与long long整型相关的一共有三个,如下:

#include <cstdio>
#include <climits>

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);
    return 0;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值