首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
10 回复  |  直到 2019-08-26 18:59:05 +08:00
    1
champloo   27 天前
图我贴在这里
    2
champloo   27 天前
    3
champloo   27 天前
对不起各位老哥,发了两次帖子,我不懂为啥评论可以直接发图,而帖子内容不可以
还有那个文字,我之前发的文字被空格缩进了,所以我用 gist 写的有空行的文字
    4
0x000000000   27 天前 via Android
int 溢出了吧
    5
champloo   27 天前
@0x000000000 蟹蟹老哥回复,long 和 int 进行计算,会把 int 先转为 long,再计算,所以感到很奇怪
    6
lhx2008   27 天前
虽然不知道楼主在说什么,但是你用一个 int * 一个字面值 肯定是出 int,long 不是看你结果的类型的
    7
0x000000000   27 天前
@champloo #5 86399999 这里计算出来的值已经溢出了,是个负数,然后转换成 long 也一样啊,我的理解哈
    8
champloo   27 天前
@lhx2008 @0x000000000 蟹蟹回复,确实如你们所说,是 int 精度溢出的问题
解决了!是 int 精度溢出的问题,因为会先进行乘法运算!
    9
xiangyuecn   27 天前
25*86399999L 正常 long 值,所以没有错误 log 输出

25*86399999 int 溢出,成负数,所以输出了错误 log

随便打个 err 也比 ------- 强 2^31 倍
    10
champloo   26 天前
@xiangyuecn 哈哈,好得老哥!我记住了
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1012 人在线   最高记录 5043   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 22ms · UTC 23:19 · PVG 07:19 · LAX 16:19 · JFK 19:19
♥ Do have faith in what you're doing.