【发布时间】:2021-08-16 17:35:04
【问题描述】:
据我所知,在 C 编程语言(以及许多基于 C 的语言)中,当算术运算在 N 位整数上溢出时,此溢出会将结果缩短为 2 的 N 次方, 只保留结果的 LSB。
当这种整数算术运算在 Rust 编程语言中溢出时会发生什么。
【问题讨论】:
-
您问题的第一句话并不是全部。 C 中的有符号整数溢出是未定义的行为,无符号溢出是以类型的最大值为模的(这不一定与您声称的相同,因为允许使用填充位)。
标签: rust integer-overflow