问题描述 在while循环里读入int型时cin >> x,如果在控制台输入char,x无法读入,C++会跳过cin,进入下一个while循环,就会使程序反复进行读入操作而又读不到数据,陷入死循环。 解决方法 清空输入流缓冲区 cin.clear(); //错误位重置 cin.ignore(100, '\n'); //忽略100个字符,直到遇到'\n'