我的 C++ 程序可能会在运行时创建一个值直到 10^16,我尝试使用“long long int”,但它没有用。哪种数据类型对应 10^16?
谢谢;
我的 C++ 程序可能会在运行时创建一个值直到 10^16,我尝试使用“long long int”,但它没有用。哪种数据类型对应 10^16?
谢谢;
的最小保证最大值long long int
是2^63 - 1
,大约是10^19
。应该没问题。可以肯定的是,使用std::int_least64_t
来自 的类型<cstdint>
。保证至少有 64 位。
小于64位所以.. long long 应该是好的..
试试int64_t
。那应该足够长了。但一定要输入一个整数文字:
int64_t n = 10000000000000000;
如果你说1E16
,那是一个double
文字,转换为整数可能会产生意想不到的结果。
Unsigned long long Int 最高可达 10^18!