我正在尝试使用 gmp 库对大位数进行指数运算mpz_ui_pow_ui()
但我传入的mpz_class值给了我错误:
error: invalid conversion from ‘mpz_ptr {aka __mpz_struct*}’ to ‘long unsigned int’ [-fpermissive]
mpz_ui_pow_ui(cipher.get_mpz_t(), pTxt.get_mpz_t(), e.get_mpz_t());
传入的所有值都是mpz_class类型。为什么会出现错误,如何使其工作?
https://gmplib.org/manual/Integer-Exponentiation.html
— 功能:无效mpz_ui_pow_ui(mpz_t rop、无符号长 int base、无符号长 int exp)
该函数需要unsigned long
,而不是mpz_t
。