在交互式程序中,如果我们只需要读取一个字符,如输入abc,但是我们只需要a。要实现这种特性,需要以下动作:
while(getchar() != '\n')
continue;/*跳过输入行的剩余部分*/
这个循环从输入读取字符,直到出现由回车键产生的换行字符。注意,函数返回值没有被赋值给ch,因此,字符仅被读取并丢弃。因为最后一个被丢弃的字符是换行符,所以下个读入的字符是下一行的首字符。
如果用户一开始就按了回车键,导致遇到的第一个字符是换行符。下面代码可以处理这种问题。
if(ch == '\n')
continue;