gpt4 book ai didi

c++ - 为什么我可以用 int > +32767 来操作?

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

我可以读到 int 范围(有符号)来自 [−32767, +32767]但我可以说,例如

int a=70000;
int b=71000;
int c=a+b;

printf("%i", c);
return 0;

输出为 141000(正确)。调试器不应该告诉我吗“此操作超出范围”或类似内容?

我想这一定是因为我忽略了 C 编程的基础知识,但我目前正在阅读的所有书籍都没有提到这个“问题”。

编辑:2147483647 好像是上限,谢谢。如果总和超过该数字,则结果为负,这是预期的,但如果它是减法,例如:2147483649-2147483647=2,结果仍然不错。我的意思是,为什么值 2147483649 正确地用于该减法目的(或者至少在我看来)?

最佳答案

范围 [−32767, +32767] 是所需的最小范围。允许实现提供更大的范围。

关于c++ - 为什么我可以用 int > +32767 来操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34811993/

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