项目:通讯录的书写
问题: 是否继续输入(y/n):输入姓名:
描述:在没有输入y或n的情况下直接跳到循环开始
原因:没有清除缓存
解决方法:在输入前加上while((i = getchar()) != EOF && i != ‘\n’);
另一种就是定义一个清空的函数
void safe_flush(FILE *fp)
{
int ch;
while((ch = fgetc(fp)) != EOF && ch != '\n' );
}
safe_flush(stdin);