重複の可能性:
2 つの文字を加算すると int が生成される
次の C++ コードがあるとします。
unsigned char a = 200;
unsigned char b = 100;
unsigned char c = (a + b) / 2;
出力は論理的に予想される150ですが、式に整数オーバーフローがあるべきではありません(a + b)
か?
明らかに、ここでのオーバーフローに対処するために整数の昇格が必要です。そうでない場合、私には見えない何かが起こっています。誰かが私を啓発できるかどうか疑問に思っていたので、整数の昇格とオーバーフローに関して依存できるものと依存すべきでないものを知ることができます。