查看原文
其他

男子骑车忘锁欠两千万,程序员议论曝真相

(点击上方公众号,可快速关注)


来源:快科技

news.mydrivers.com/1/542/542813.htm

如有好文章投稿,请点击 → 这里了解详情


7月24日,一男子在广西骑摩拜单车后忘记关锁,发现账户余额竟然欠费2147万元。摩拜单车相关负责人称,系统会有不定期更新升级,极个别用户会遇到类似问题。可以拨打客服电话,app端上报故障,或者通过摩拜单车相关微博微信反馈问题,客服人员收到反馈后即刻会按照实际余额修复,用户无需担心。



不过,数字停留在欠费21474778元,虽然是系统故障,这也引起不少程序员的兴趣,纷纷揭秘究竟是怎么算出来的。



有程序员表示:


  • 这是int类型的最大值,没有对越过滤导致的,开除程序员吧。


ps.在C语系编程语言(C、C++、C#、Java等)中,int是一种整数数据类型定义的标示符,范围[-2^31 , 2^31 -1] 即 [-2147483648,2147483647]。


  • 科普一下,这个钱还真跟最大值有点关系。2147483647,如果单位是分,整数部分就是 21474836元。而这件事儿里的 21474778,跟int最大值21474836就差58块钱。也就是说,这个系统的钱很可能是以分为单位的int型值。


  • 其实他该扣的是119.3元,取最大整数120元,2147400/1000/60/30。




看完本文有收获?请转发分享给更多人

关注「程序员的那些事」,提升编程技能

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存