【发布时间】:2021-01-31 18:47:08
【问题描述】:
使有符号整数溢出未定义行为的目的是允许编译器优化。但是,这难道不是一个同样有效的论点,也可以使无符号整数溢出未定义行为吗?
【问题讨论】:
-
有符号整数有不同的表示形式,溢出行为也不同。据我所知,只有一种表示用于无符号匹配。
-
请注意,在 C++ 术语中,无符号整数永远不会溢出:它们只能环绕,因为标准要求对无符号整数使用模运算整数。
-
“为什么语言设计者做出这个决定而不是那个决定”类型的问题通常是无法回答的。
标签: c++