В Java вы можете использовать класс BigInteger для хранения произвольно больших целых чисел. В C ++ вы можете использовать такую библиотеку, как GMP , чтобы получить ту же функциональность.
java.math.BigInteger
Для работы с целыми числами, размер которых превышает 64 бита (размер длинного числа), используйте java.math.BigInteger. Этот класс представляет неограниченные целые числа и предоставляет ряд методов для выполнения с ними арифметических операций.
http://leepoint.net/notes-java/data/numbers/10biginteger.html
Если вам нужны десятичные значения, используйте BigDecimal
Конечно, вы можете использовать класс BigInteger в пакете java.math. Этот класс обеспечивает операции для модульной арифметики, вычисления НОД, проверки простоты, генерации простых чисел, манипуляции с битами, например операций.
Этот класс был добавлен в сам JDK1.1 .
Но я не знаю, есть ли такая возможность, встроенная в библиотеку C ++. Может быть расширяемый API от третьих лиц.
Напишите свой собственный класс и операции для представления 128-битных чисел или используйте какую-нибудь доступную библиотеку.
Можно. Хотя, скорее всего, для этого придется использовать библиотеку, по крайней мере, для C++.
Мне нравится библиотека PolarSSL или библиотека GNU MP Bignum.
Конечно, вы можете их представлять.
По крайней мере вы можете использовать байтовый массив с 16 элементами.
Однако, вопрос в том, хотите ли вы просто представить значение или действительно сделать с ним некоторые вычисления.
В Java вы можете использовать BigInteger
для представления (фактически) произвольного размера целочисленных значений и также производить вычисления.
Класс BigInteger
предназначен для целочисленных значений, превышающих Long.MAX_VALUE
.