Analysis of information sources in references of the Wikipedia article "2の補数" in Japanese language version.
java.lang.Math.abs(int)
などは符号付き整数型の最小値に対して引数の値をそのまま結果として与える[12]。また、組み込みの整数演算は算術オーバーフローを検出しない[13]。一方でC言語やC++において、2の補数表現による符号付き整数の最小値(例:INT_MIN
)に単項マイナス演算子を作用させる(例:-INT_MIN
)と、汎整数拡張により結果の型がオペランドの型より大きくなる場合を除き、算術オーバーフローが発生する。符号付き整数の算術オーバーフローは未定義動作を引き起こす。算術オーバーフローの例に関しては例えば INT32-C を参照。 Seacord, Robert. "CERT C Coding Standard: INT32-C. Ensure that operations on signed integers do not result in overflow". wiki.sei.cmu.edu. 2023年5月13日閲覧。