mpfr_t类型对它们可以存储的最大整数值有限制吗?还是像mpz_t类型一样,整数组件实际上是无限制的(仅受目标计算机上的内存限制)?
如果是这样的话,有没有一种简单的方法可以在解析值的同时检测溢出?
发布于 2020-06-23 15:52:46
多亏了指数,您可以表示比mpz_t更大的整数,但是您可能希望使用mpfr_set_emax扩展指数范围,以便在64位平台上,最大可表示整数几乎是2^(2^62−1)。也就是说,你不能精确地表示所有的整数,因为一些整数(特别是奇数)需要太多的精度。关于精度的限制,MPFR的理论限制是MPFR_PREC_MAX,这在64位平台上是巨大的。但在实践中,您首先会遇到内存大小或mpz_t大小的limit of 2^37 bits限制。
https://stackoverflow.com/questions/62521008
复制相似问题