While循环永不结束消息
While loop never ending message
如果输入是double
,我想测试它,但如果输入不是double
,我写的弹出消息永远不会停止显示。虽然当我把double变成字符串时,一切都很好。请帮忙。我不知道该做什么。
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int main(){
double x;
cout<<"Enter Number.n";
while (!(cin>>x)){
cout<<"please only numbers.n";
cin >>x;
}
return 0;
}
您需要使用cin.ignore(1000, 'n');
来清除输入。您还需要使用cin.clear();
来删除"失败"位,以便下一次输入能够成功。
相关文章:
- boost::进程间消息队列引发错误
- 在线编译器中的分段C++没有打印消息
- C++错误消息*成员参考.**初学者*
- 为什么在这个代码结束循环中没有得到结束
- 在createdialog创建的窗口中捕获用于编辑控件的OnMouseMove消息
- 试图对缓存进行跨步测试,但程序并没有结束
- 要与"if constexpr"一起使用的编译时消息(在预处理器之后)
- 当调用switch语句中的函数时(即使函数不包含循环),似乎是永不结束的循环的问题
- 如何通过参数抛出错误消息
- 从服务器传输到客户端的消息不会出现
- 为什么擦除方法会影响结束方法
- 根据用户输入用字母填充矢量,并将"开始"和"结束"放在四肢
- ROS2 动态消息模板
- C++秘密消息学校作业
- glad 导致 glfwSwapBuffers 返回错误消息
- C++,术语,非规范,阻塞,检测消息结束
- 客户端发送消息,但服务器在客户端结束程序之前不接收消息
- 消息结束时发音额外的音节
- 加密++异常调用消息结束
- While循环永不结束消息