GMP:将整数转换为std :: string

时间:2019-01-11 14:17:33

标签: c++ stdstring gmp

GMP‌具有将标准字符串转换为整数的功能吗?

函数mpz_init_set_str初始化并将char *转换为int。 我想知道对std字符串有什么支持吗?

2 个答案:

答案 0 :(得分:3)

只需使用c_str()函数即可访问底层的char数组:

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

答案 1 :(得分:0)

GMP具有C ++绑定,因此请使用gmpxx,它将正常工作。 简单的分配即可完成任务(因此无需样板代码)。

Even introduction显示了这样的示例:

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;
}