• 下一步就要到各个地方去吵架,顺便安利 Ruby、Rails,从而建立生态圈,使明年的统计数据更好看。

  • @huacnlee

    我建议可以开一个挖坟页面,跟 topics
    https://ruby-china.org/topics/
    除了全是挖坟帖子以外,其它的都一模一样。

    我以前也遇到过同样的问题,很好的话题顶不上来。

  • 谢谢回复,理解了,还真有这种场景。

  • 我想知道的是,为什么要两种方式同时访问,我觉得没有必要还保留 http,只留 https 就可以了啊。 有用户一定要用 http 来访问吗?

    SEO 怎么做?

  • 为什么不 301 重定向呢?

  • 请问同时使用两种方式有什么优势,会带来什么问题?

  • 2017 技术达人年度总结 at 2018年02月06日

    1000个粉丝理论?

  • Rails 文章功能设计 at 2018年02月05日

    在一个 CMS 成灾的年代,为什么还要自己从零开始写 CMS? 练手吗?

  • Linux、Ruby 不冷没天理! at 2018年01月29日

  • 526.56 转换成二进制是:
    1000001110.1000111101011100001010001111010111000010...

    小数部分 10001111010111000010 无限循环

    因为 32 位 float 存不了那么多,只能存到小数点后 14 位,所以最后只有这个二进制保存下来: 1000001110.10001111010111

    小数部分就成了 0.10001111010111,也就是 0.55999755859375

    因此 526.56.floor(2)
    等价于
    526.55999755859375.floor(2)

    结果 526.55 没毛病

    为什么只能存到小数点后 14 位呢?

    526.56 也就是 1000001110.1000111101011100001010001111010111000010...
    用二进制的科学记数法表示为 (小数点左移 9 位):
    (2^9) * 1.0000011101000111101011100001010001111010111000010...

    float 存储的时候第一位是一个符号位,接下来 8 个是指数位,也就是 9,因为有效数的整数部分只能为 1,就不存了,只剩下23个存有效数 1 后面的小数部分,原整数 526 的信息除 1 以外是 000001110, 占了 9 位, 只剩下 23 - 9 = 14 位存小数部分:

    符号 1 bit 指数 8 bits 整数信息减去 1 有 9 bits 小数部分 剩下 14 bits
    0 10001000 000001110 10001111010111

    指数不是 9 吗,这是却是 10001000? 因为指数有正负,一共 8 bits, 0~255,正负各 256/2=128, 所以 指数 9 表示为 9 + 127 = 136,也就是 10001000

    最后结果: 526.56 的浮点数是:01000100 00000011 10100011 11010111