This question already has answers here:
Representing big numbers in source code for readability?

(5个答案)


5年前关闭。




在C++中,有时您想声明大数。有时很难看到您是否有正确的零。
const long long VERY_LARGE_NUMBER = 300000000000;

在OCaml之类的语言中,您可以将数字加下划线分隔以提高可读性。
let x = 300_000_000_000;;

C++中有类似的机制吗?我见过像= 1 << 31这样的2的幂,但是对于10的非常大的幂呢?有时您要声明非常大的数字(例如,竞赛编程中的数组边界),并且您要确信声明的数组大小正确。

我可以想到类似:
const long long VERY_LARGE_NUMBER = 3 * (1 << (11 * 10 / 3));

...滥用1<<10 ~= 1000的11个零接近3,但这是冗长且不确切的。

最佳答案

怎么样

const long long VERY_LARGE_NUMBER =  (long long) 300 * 1000 * 1000 * 1000;

关于c++ - 提高C++中非常大的常数的可读性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30277789/

10-10 01:43