Overflow occurs when the result cannot be represented in the target data type. The value -72 can be represented in char, which is a signed 8-bit amount ... in your example there is no overflow. Perhaps you are thinking about borrowwhen doing bitwise subtraction ... when you subtract '1'from '0', you need borrowhigher order bits from the next position. You cannot ignore entries when performing subtraction.
-35 decimal is 11011101 in two complement 8-bit
+37 decimal is 00100101 in two complement 8-bit
, +37 -35, 5 ( 0 ). 5 '1' '0', 6 ( ) -35, '1' .
-35 decimal is 11011101 in two complement 8-bit
+37 decimal is 00100101 in two complement 8-bit
--------
-72 decimal is 10111000 in two complement 8-bit
, 8- ( 7)... , .
. , , , , , , discard the carry (indicates overflow). , , , . , . N ( 0 N-1), range 0 to (2^N)-1, N-1, - ( unsigned ) ( N-1). ,
, , unsigned /... , , , ().
. -
unsigned .unsigned .
signed .
signed .
,
. , , , . , . , , (, ). , (.. ).