GMP: преобразование целого числа в std :: string - PullRequest
0 голосов
/ 11 января 2019

Имеет ли GMP‌ какую-либо функцию для преобразования строк std в целые числа?

Функция mpz_init_set_str инициализирует и преобразует char * в int. Я хочу знать, есть ли поддержка строк std?

Ответы [ 2 ]

0 голосов
/ 11 января 2019

GMP имеет привязки C ++, поэтому используйте gmpxx, и он будет работать без проблем. Простые задания сделают эту работу (поэтому без кода котельной плиты).

Четное введение показывает такой пример:

int
main (void)
{
  mpz_class a, b, c;

  a = 1234;
  b = "-5678";
  c = a+b;
  cout << "sum is " << c << "\n";
  cout << "absolute value is " << abs(c) << "\n";

  return 0;
}
0 голосов
/ 11 января 2019

Просто используйте функцию c_str () для доступа к базовому массиву символов:

std::string str;
mpz_t strg;
mpz_init_set_str(strg, str.c_str(), 10);
...