c++ - 在 C++ 中计算大数

标签 c++ xcode primes

我正在尝试用 C++ 编写素数查找器代码。我有一个我很满意的正常运行的程序,但是当我尝试计算数十亿的素数时,我收到如下错误消息:

"Implicit conversion from 'long' to 'int' changes value from 10000000001 to 1410065409" .

即使在数十亿的情况下,它的运行速度也相当快,所以我想测试极限,但这个数字的变化阻止了它。

最佳答案

您需要使用 long 类型(可以容纳比 int 更大的数字)。 下面是 int 溢出的例子:

int test1 = 10;
int test2 = test1 * 89000000;
cout << test2;

长整数

long test1 = 10;
long test2 = test1 * 89000000;
cout << test2;

结果是正确的。

关于c++ - 在 C++ 中计算大数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38690852/

相关文章:

c++ - 我如何将类对象写入文件?

c++ - 寻找主要因素

c - 打印合数的最大质因数

c++ - 向数组中添加内容

C++ Singleton 无法在 Mac OS 上链接

c++ - 模板参数数量错误的模板模板参数

ios - UIButton图像已按下和未按下

ios - 快速代码补全不起作用

ios - 在将 iOS 应用程序提交到 iTune-connect 时找不到匹配的配置文件

python - python 中的质数生成器最多 20