回复 19楼 神龙赖了
这样说的话 这个函数最好是不是返回‘\n’也就是说ch=‘\n’吗?
回复 16楼 TonyDeng
擦,学习了,从来没关注过,原来getchar真是返回的int
int get_first(void) { int ch; ch = getchar(); // 直接把第一个getchar()的结果返回,那有可能就是一个错误码,不要转换为char,函数返回也直接是原封不动的int while (getchar() != '\n') // 这个空循环,是把输入缓冲区中的剩余数据清空,即一直到'\n'之间的全部内容都清除,否则下次读数据时会被读入 { ; } return ch; // 在清空了输入缓冲区之后再把刚才第一个读到的内容反馈出去,包含错误码 }