Как мне объявить целочисленную переменную длиной 1024 бита? - PullRequest
0 голосов
/ 20 марта 2011

Я пытаюсь написать алгоритм для объединенного класса теории чисел / информатики, который может вычислять большие числа быстрее, чем экспоненциально.Я использую компилятор g ++ на 64-битной машине, но когда я объединяю в цепочку long, это позволяет мне выполнять до 2 длинных.Есть ли способ сказать ему использовать произвольное количество пространства для переменной?

Ответы [ 2 ]

3 голосов
/ 20 марта 2011

Если вы хотите просто коллекцию длинных, вы можете объявить массив длинных.Но ты не хочешь этого.Вы хотите https://mattmccutchen.net/bigint/ BigIntegers: -)

Альтернативы:

http://gmplib.org/

http://www.mpir.org/

(отказ от ответственности: у меня нет 't протестировал / использовал их)

Или, если вы хотите их реализовать

Как реализовать big int в C ++

Я добавлю, чтоБиблиотека st ++ C ++ не содержит реализацию большого целого числа (источник реализация класса STL big int )

1 голос
/ 20 марта 2011

Вам понадобится библиотека. Хороший - http://gmplib.org/

...