四舍五入后,sprintf将减号添加为零

woo*_*ert 4 printf r rounding negative-number

我们来做一些四舍五入

> round(-0.001, 2)
[1] 0
Run Code Online (Sandbox Code Playgroud)

我收到零.

现在与sprintf结合使用

> sprintf("%f", round(-0.001,2))
[1] "-0.000000"
Run Code Online (Sandbox Code Playgroud)

为什么有减号?我期待0.000000.

$R --version
R version 2.13.1 (2011-07-08)
Run Code Online (Sandbox Code Playgroud)

Fem*_*ref 8

这是浮点数(IEEE 754)的本质,有一个-0定义.见-0.