下面程序中是区别gets()和scanf()函数的。

2024-11-24 08:09:34
推荐回答(3个)
回答1:

getchar就是从缓存里读取一个字符,这里的实际作用就是把前一次scanf遗留在缓存里的回车符给读取出来了,这样缓存里就没有遗留字符了,再次执行getchar或scanf读取字符的时候,就是从键盘读入字符了。

回答2:

就是说scanf执行之后,虽然连回车符都放入了缓冲区,但是实际上回车符并未读给a,所以缓冲区还残留一个回车符,getchar之后就可以正常使用缓冲区,即可执行下面的scanf

回答3:

scanf是不会接受回车和空格的,gets总是以\n结尾