如何打印在控制台上超过ULLONG_MAX的号码?

时间:2018-03-04 01:08:46

标签: c++ console

我想打印" 845100400152152934331135470251"或" 1071292029505993517027974728227441735014801995855195223534251"

但在C ++中,"无符号长long"的最大值是" 18446744073709551615"

这比我想打印的要少得多

请帮帮我......

1 个答案:

答案 0 :(得分:1)

首先,你的问题不是关于打印大数字而是将它们存储在变量中(也许可以计算它们)。

在某些编译器(例如GCC)上,您有像int128这样的变量类型,可以处理最多10 ^ 38(更少)的数字。

如果这还没有解决问题,那么你必须编写自己的算术。例如,将数字存储在字符串中并写入将在其上计算的函数(加法和减法相当容易,乘以中等(只要数字不是很大),用大整数除以)。或者你可以查找已经制作的大整数库(在互联网上,c ++没有内置的)。