Какие библиотеки Bignum работают с D? - PullRequest
6 голосов
/ 18 сентября 2011

Мне нужна библиотека bignum для представления больших целых чисел. Какие варианты у меня есть с языком программирования D? Есть ли, например, привязки GMP?

Обновление:

Я пытаюсь использовать встроенный BigInt, как описано ниже, но, похоже, он не доступен с GDC.

import std.bigint;
import std.stdio;

void main()
{
  BigInt n = "123";
  writefln(n);
}

Когда я пытаюсь скомпилировать этот код с gdc main.d, мне говорят, что он не может найти bigint.d. GDC реализует только часть библиотеки или я делаю что-то не так?

Ответы [ 2 ]

5 голосов
/ 18 сентября 2011

Если то, что вы ищете, это большой целочисленный тип, то в стандартной библиотеке есть BigInt.С другой стороны, если вы специально хотите использовать GMP, то все, что вам нужно сделать, - это иметь extern(C) объявления для соответствующих типов и функций в GMP, которые вам нужны, и вы можете вызывать их непосредственно из D. на этой странице для получения более подробной информации о том, как использовать C-код в D.

4 голосов
/ 18 сентября 2011

Пол Андерсон работает над абстракцией BigFloat для стандартной библиотеки.

...