gpt4 book ai didi

c++ - 有符号整数溢出未定义行为

转载 作者:行者123 更新时间:2023-12-04 17:13:15 25 4
gpt4 key购买 nike

this question , 有 this answer说明

Signed integer overflow is undefined behaviour

但它没有提及 C++ 标准,所以我尝试自己在 ISO/IEC 14882(第六版 2020-12)中查找它。在第 148 页的第 7.7 节中,我发现 ( 5.7 )

an operation that would have undefined behavior as specified in Clause 4 through Clause 15 ^84;

引用脚注84(草案中的76)告诉我

This includes, for example, signed integer overflow (7.2), certain pointer arithmetic (7.6.6), division by zero (7.6.5), or certain shift operations (7.6.7).

接下来我在 7.2 章中搜索“undefined”我刚得到 7.2.1 ( 11 ) 和 ( 11.3 ) 和 7.2.2 ( 1 ) 但我要么不理解这些句子,要么它们与有符号整数溢出无关。

脚注 84 中的引用是否不正确?它应该引用 7.1 ( 4 ) 吗?

If during the evaluation of an expression, the result is not mathematically defined or not in the range of representable values for its type, the behavior is undefined.

如果引用是正确的,有人可以用简单的词来解释 7.2 在哪里以及如何使有符号溢出未定义的行为吗?

最佳答案

a pull request为这个案例开的,好像7.2章的引用是错误的,应该是7.1章。

关于c++ - 有符号整数溢出未定义行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69098826/

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