golang:什么"%b"在fmt.Printf中为float64做什么,以及二进制格式的float64中的Min subnormal positive double是什么?

时间:2016-04-10 23:53:56

标签: go

适用于包fmt浮点和复杂成分的golang doc 表示:

浮点和复杂成分:
%b十进制科学记数法,指数幂为2,     以strconv.FormatFloat的方式使用' b'格式,     例如-123456p-78

和我的测试:

<h2>
    <div style="text-align: left;">About Me</div>
    <div style="text-align: right;">My Stuff</div>
</h2>
<h3>
    <div style="text-align: left;">Name: Jet "Humding3r" Geronimo<br />
                                   Age: 11<br />
                                   Hobbies: Coding, Gaming, Music</div>
</h3>
<h3><div style="text-align: right;"><a href="https://github.com/Humding3r/number-guessing-game">Number Guessing Game</a></div>

结果:
4503599627370496p-52
它是什么?你的猜测是我的! 所以测试一下:

fmt.Printf("%b\n", 1.0) 

没关系。 所以我认为这很有趣,分享信息。

1 个答案:

答案 0 :(得分:2)

然后我做了一些研究,并经过IEEE 754二进制表示的数小时研究;许多插入结果出现了:
好的开始是:

https://en.wikipedia.org/wiki/Double-precision_floating-point_format https://en.wikipedia.org/wiki/IEEE_floating_point

然后进行一些测试和结果:

fmt.Printf("0b%b\n", 255) //0b11111111

}

结论:
 浮动的%b仅显示有效数字,完成。
这条单线花了我几个小时的时间! 欢迎任何评论,谢谢。