跳到正文
信奥逐课

第 031 课

long long

🟢 入门 约 5 分钟

一句话理解

long long 是 64 位整数,信奥里防溢出的默认选择。

为什么要学

大纲特别强调:很早就要养成用 long long 防溢出的意识。

讲解

范围大约到 9e18。两个 1e9 相乘、n=1e5 的求和,通常都该用它。

字面量建议加 LL:1e9 在有的上下文是浮点,1000000000LL 才是长整数。

输入输出仍然用 cin/cout,不必改成 printf 的 %lld。

例子

long long a = 1000000000LL;
long long b = 1000000000LL;
long long c = a * b;
cout << c;

输出:

1000000000000000000

1e9×1e9=1e18,int 装不下,long long 可以。如果 a、b 是 int,乘法会先按 int 算并溢出,再塞进 long long,照样错。

常见错误

练习 做完再看下一课

两个 1e9 相乘,更安全的整数类型是 ____ ____

在线练习 C++ 在浏览器里编译,代码不会上传

Ctrl / ⌘ + Enter 运行 · Tab 缩进

输出
 

进度保存在本机浏览器里。

左右方向键也可翻课