我知道这是一个非常愚蠢的问题,但我希望有人能提供帮助。
出于精确的原因,我被迫使用 mpir,所以我必须为它翻译所有的 c 代码。基本上我只需要更重要的精度数字。
但是,我对用于变量的数据类型感到非常困惑。我了解 mpz_t 用于整数。由于我存储的数字有很多小数位,这显然不合适,因为整数只是整数
mpq_t 用于有理数。因为我不认为存储的每个值都是有理数,所以我看不出这有多合适。
mpf_t 用于浮点数。由于这具有“有限的精度”,我看不出这对我的变量有什么用处,因为我被告知使用 mpir 的主要原因是为了提高精度。
我只是希望能够以准确的方式表示我的数字,而我使用它的全部原因是因为有人告诉我它有助于在真正的大数和小数之间进行算术运算时保持准确性。我应该为 mpir 使用什么数据类型?我被告知我需要大于四倍的精度。:-(
我只是发现自己对整个事情感到困惑,需要一些关于使用什么数据类型以及如何确定精度级别的指导。如果可能,以非常简单的方式进行解释。