在我们使用C语言对字符串或者字符进行输入时,有时会遇到完成第一个输入后 ,第二个字符的输入就直接略过的情况?这就是输入的格式问题。
scanf遇到空格、回车和Tab键都会认为输入结束,然后空格、回车和tab键会保存在缓存区中,如果这时你想输入一个字符,语句为scanf("%c", &a),但是事与愿违,计算机会直接跳过输入,原因就是该语句获得了一个回车或者其它字符,所以,在对付C语言中关于字符的输入问题前,我们应该了解哪些输入函数可接受回车键之前的所有字符,并用‘\n'代替'\0',回车键不会留在输入缓冲区中,哪些输入函数是可以留在缓冲区中的。
scanf有缓存区,gets无缓存区
还有其它的,期待你的完善!
相关链接: