2

我正在阅读一些 C++ 代码,我遇到了这个相当奇怪的行。

这是行:

if (!k || !n || !m) return min((ll)tot, m*(1LL << n));

1LL 似乎在这里得到了回答:What is 1LL or 2LL in C and C++?

我想知道(ll)tot[2 个小 L's] 到底是什么;它是某种形式的类型转换吗?tot是一个全局整数变量。

有人可以启发我,或者引导我到一些资源,在那里我可以阅读到这到底(ll)variableName是什么。

提前致谢。

4

1 回答 1

3

如前所述,它可能不是 11(十一),而是 ll(双 L)。您可以尝试搜索

#define ll long long

在那个代码中:)

它也可以是自定义对象。

class ll { ... };

或者一个简单的 typedef 别名

typedef long long ll;

(感谢用户 0x499602D2 提及此解决方案)

于 2013-06-01T16:11:00.003 回答