C 中的有符号/无符号 char 整数溢出

问题描述 投票:0回答:1

我正在研究整数溢出,并提出了这个问题。

(https://i.stack.imgur.com/cto3u.png)

上述程序中的最后一个值是什么?为什么?我知道“a”将为 0,因为 8 位的范围在 0 到 255 之间,但是带符号整数和“b”、“c”、“d”会发生什么?

c integer-overflow unsigned-integer unsigned-char signed-integer
1个回答
0
投票
  • 有符号整数溢出,这是一个未定义的行为。
  • 无符号整数环绕 - 即如果增加最大值则从零开始计数,如果减少零则具有最大值。
© www.soinside.com 2019 - 2024. All rights reserved.