【发布时间】:2018-09-06 10:45:49
【问题描述】:
单位System.Math定义常量
MinExtended80Denormal
我可以使用给定的 rtl 函数将此数字转换为字符串吗?
我试过了
FormatFloat('#.##############E+####', System.math.MinExtended80Denormal)
导致
000000000000000E+00000
我也尝试过更大的非规范化值,但似乎内置格式化函数不支持这些值(其中指数为零)。
【问题讨论】:
-
对我来说,
FormatFloat()会返回0E+0。但无论哪种方式,我都可以重现这个问题。科学输出必须是FormatFloat()中的错误 -
你为什么要问?您想将此特定值表示为文本,还是想将任意非规范化表示为文本?
-
我假设最小的 Extended 80 denormal 非常小,非常接近 0(可能只是尾数中的一点),因此您将无法使用 FormatFloat 对其进行格式化。
-
我猜这里是东京 - 我认为之前的版本中没有定义常量。
-
@David:我想我最清楚我想要找出什么。我从来没有说过我已经有解释了。这些是 cmets,而不是答案。
标签: delphi string-formatting delphi-10.2-tokyo extended-precision