可以详细解释输入字符7654后得出该答案的过程吗,还有解释一下这段代码的含义和结构,还有为什么7654↙一次性输入,那这样输入后具体是什么过程运行的呢

img


可以详细解释输入字符7654后得出该答案的过程吗,还有解释一下这段代码的含义和结构,还有为什么7654↙一次性输入,那这样输入后具体是什么过程运行的呢

1.getchar一次从缓冲区中读取一个字符,并将字符从缓冲区中删除
如果缓冲区中没有任何字符,那么代码会发生阻塞,等待缓冲区中有数据
2.你在控制台下输入字符的时候,字符不会直接进入缓冲区,要等你键入回车之后才会一起进入缓冲区
3.输入了7654之后,'7'-'2'的结果是5,switch里没有这个条件,直接略过了,然后是'6'-'2',匹配4,'4'+4='8',输出一个8
下一个是5,匹配3,输出一个8,因为case 3没有加break,标签穿透了,所以继续输出'5'+2,输出一个7
最后一个是4,匹配2,还是输出8,结束

看图片

img