我想将双精度数的尾数存储在变量中
我发布了一个代码来获取 double 的二进制表示形式:点击这里 https://stackoverflow.com/questions/5670221/binary-representation-of-a-float
我应该改变什么来隔离尾数
In <math.h>
double frexp (double value, int *exp)
将 VALUE 分解为指数和尾数。
double ldexp (double value, int exp)
则相反。
要获得整数值,您必须将 frexp 的结果乘以 FLT_RADIX 指数 DBL_MANT_DIG(这些可在<float.h>
。要将其存储在整数变量中,您还需要找到适当的类型(通常是 64 位类型)
如果您想处理某些实现提供的 128 位长双精度,您需要 C99 frexpl 来进行拆分,然后您可能没有足够的整数类型来存储完整结果。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)