我最近向自己介绍了高精度算术的 GMP 库。它似乎很容易使用,但在我的第一个程序中,我遇到了实际问题。如何评估表达式。例如,如果我有 "1+8*z^2" 并且 z 是一个 mpz_t "大整数" 变量,我该如何快速评估呢?(我正在编写的程序中有更大的表达式。)目前,我正在手动执行每个操作并将结果存储在临时变量中,例如“1+8*z^2”表达式:
1) 首先做 mpt_mul(z,z,z) 平方 z
2) 然后定义一个名为“8”的 mpz_t 变量,其值为 8。
3) 将第一步的结果乘以这个 8 并存储在 temp 变量中。
4) 定义名为“one”的 mpz_t 变量,其值为 1。
5) 将此添加到步骤 3 的结果中以找到最终答案。
这是我应该做的吗?或者,还有更好的方法?如果有 GMP 的用户手册可以帮助人们入门,那将非常有帮助,但只有参考手册。