gpt4 book ai didi

linux - 为什么 bash 返回负数而不是 2^64?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:33:23 28 4
gpt4 key购买 nike

我写了一个简单的 bash 脚本来计算 2^63,但结果返回 -9223372036854775808!它可以正确计算出 2^60。谁能解释为什么会这样?

最佳答案

您系统上的 Bash 使用 64 位有符号整数,因此最大正值为 2^63-1。

2^63 回绕到负值,代表-2^63 的最小值(最大负值)。

请注意,在其他系统上 Bash 可能不使用 64 位整数,man bash 仅声明“计算是在固定宽度的整数中完成的,不检查溢出”。

关于linux - 为什么 bash 返回负数而不是 2^64?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48096011/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com