在Borland C++ Builder中是否有类似C#的"十进制"类型?

kok*_*ira 6 c# floating-point decimal c++builder

在C#中,有一个名为decimal(System.Decimal结构)的类型.我找到的信息显示它比某些情况更好floatdouble类型:

Borland C++ Builder程序有类似的类型吗?

Mic*_*eld 8

所述decimal在C#,NET的类型System.Decimal的类型,只是一个浮点数存储为基础-10代替的基-2编码.float并且double是更典型的base-2浮点数.也就是说,a double存储为+/- x * 2^y十进制存储为+/- x * 10 ^ y.这就是为什么它作为一个例子更好地用于财务数据,通常用表达方式表示x * 10^-2.IEEE标准754(浮点数学标准)称这个"十进制浮点"数学,并定义每个的32位和64位版本.

在C++中,这些类型在实施std::decimal命名空间中,并且被称为std::decimal::decimal32std::decimal::decimal64,在<decimal>报头中.如果Borland C++ builder有这样的类型,你会在那里找到它.GNU的C++库包含这个标题但是,AFAIK它实际上并不是标准的一部分,因此BCB可能没有它.如果是这种情况,您将需要使用第三方库.@ dash的英特尔十进制浮点库的例子可能是最知名的这样的库,但是IEEE 754 Decimal如果由于某种原因你需要它们,谷歌搜索应该会找到其他人.