今天一个学弟来问我一个这样的问题:
“学长,为什么结果会是3呢?”
我这心里一盘算,254+3=257,而char的大小是8位,无符号的char可表示0~255,那结果应该等于1啊,怎么会蹦出来3呢?
而且应该显示是溢出的呀,怎么还打印未溢出呢?
读了一遍程序,发现在判断的时候||写成了&&,那这个问题就这么pass掉了。
那第一个问题,他为什么会少2呢??
不亲手运行一遍我是不会相信所谓的bug的。
于是我打开落灰的devc++,熟练的敲下下面的程序:
#include <iostream>
using namespace std;
int main(){
unsigned char a,b,sum;
scanf