求解释一下它的运行原理,为什么是56啊

img

回答:实践是检验真理的唯一标准,确实是56 ,解释如下:

先给截图哈,ASCII码编码规范,计算机内采用补码表示,而补码的加减法就相当于直接相加减,-100-100=-200,变为2进制的补码表示,就相当于-200+256=56,原因,char类型只有8位(也就是一个字节),多了,溢出它是不管的,输出scanf("%d",c) ,相当于直接输出它的值为 56 ,没有问题;和计算机内部ASCII码编码关系比较大

img

img

img

说真的,我就糊弄糊弄你,找个看似合理的解释,具体为啥会出现负值,我真不太清楚

img

img

img

等你学了计算机组成原理,相信你会懂的,别着急

救命呀