我正在用 php 编写一些代码,我发现了这个问题:
$a = 4.60;
$b = 5.05;
$c = 2.60;
$r = ($a + $b + $c) * 0.1;
echo "r: $r\n";
echo "r sprintf1: " . sprintf("%.2f",$r) . "\n";
echo "r sprintf2: " . sprintf("%.2f",1.225) . "\n";
输出是:
r: 1.225
r sprintf1: 1.22
r sprintf2: 1.23
如您所见,当结果应该相同时,sprintf 的行为有所不同。这是为什么?
江户川乱折腾
饮歌长啸