标签: c precision
我正在尝试使用这段代码将C中的大数字存储在变量“num”中。
Context
然而,在“886000000”之后它会失去精确度,它会向上舍入为0.
我认为在C中,它以双重格式存储数字。如何保持这个精度更大的数字?
答案 0 :(得分:1)
在大多数实现中,double具有53位精度。那是大约17个十进制数字,这是你似乎有的。
double
如果可以,您可以使用long double;在英特尔平台上,这将为您提供另外11位精度。
long double
除此之外,您还需要找到一个多精度库。