Как я могу представить 128-битное целое число в Java или C++?

Можно ли иметь 128-битное целое число в Java или C++?

7 ответов

Конечно, вы можете представлять их.

По крайней мере, вы можете использовать байтовый массив с 16 элементами.

Однако вопрос заключается в том, хотите ли вы просто представить значение или сделать с ним некоторые вычисления.

В Java вы можете использовать BigInteger представлять (эффективно) целочисленные значения произвольного размера, а также выполнять вычисления.

В Java вы можете использовать класс BigInteger для хранения сколь угодно больших целых чисел. В C++ вы можете использовать такую ​​библиотеку, как GMP, чтобы получить такую ​​же функциональность.

Вы можете. Для этого вам, скорее всего, понадобится библиотека, по крайней мере для C++.

Мне нравится библиотека PolarSSL или библиотека GNU MP Bignum.

BigInteger класс предназначен для целочисленных значений больше чем Long.MAX_VALUE,

Конечно, вы можете использовать класс BigInteger в пакете java.math. Этот класс предоставляет операции для модульной арифметики, вычисления GCD, проверки простоты, генерации простых чисел, операций с битами, подобных операциям.

Этот класс был добавлен в сам JDK1.1.

Но я не знаю, есть ли такая возможность, встроенная в библиотеку C++. Там может быть расширяемый API от третьих лиц.

java.math.BigInteger

Для работы с целыми числами, размер которых превышает 64 бита (размер long), используйте java.math.BigInteger. Этот класс представляет неограниченные целые числа и предоставляет ряд методов для выполнения арифметических действий с ними.

http://leepoint.net/notes-java/data/numbers/10biginteger.html

Если вам нужны десятичные значения, используйте BigDecimal

Напишите свой собственный класс и операции для представления 128-битных чисел или используйте некоторую доступную библиотеку.

Другие вопросы по тегам