当前位置: 首页 > news >正文

静态手机网站云南又出现一例

静态手机网站,云南又出现一例,梧州seo,网站建设方案C初学者指南-2.输入和输出—从输入流错误中恢复 文章目录 C初学者指南-2.输入和输出---从输入流错误中恢复怎么了&#xff1f;解决方案&#xff1a;出错后重置输入流 怎么了&#xff1f; 示例&#xff1a;连续输入 int main () {cout << "i? ";int i 0;cin…

C++初学者指南-2.输入和输出—从输入流错误中恢复

文章目录

  • C++初学者指南-2.输入和输出---从输入流错误中恢复
    • 怎么了?
    • 解决方案:出错后重置输入流

怎么了?

示例:连续输入

int main () {cout << "i? ";int i = 0;cin >> i;  // ← 第一次cout << "j? ";int j = 0;cin >> j;  // ← 第二次cout << "i: " << i <<", " << "j: " << j <<'\n';
}

有效输入⇒预期行为

$ i? 2
$ j? 3
i: 2, j: 3

i 的输入无效⇒无法读取 j

$ i? asdf
i: 0, j: 0

为什么会这样?
如果 cin 在以下代码片段中

int i = 0;
cin >> i;

读取无法转换为 int 类型的字符:

  • cin 的错误位被设置了。
  • cin的缓冲区内容没有被丢弃,仍然包含有问题的输入。
  • 任何尝试从cin读取整数的操作也会失败。

解决方案:出错后重置输入流

  • 清除 cin 的错误位。
  • 清除 cin 的输入缓冲区。
void reset_cin () {    // 清除所有错误状态位cin.clear(); // 清除输入缓冲区cin.ignore(numeric_limits<streamsize>::max(), '\n');
}
int main () {cout << "i? ";int i = 0;cin >> i;  // ← 1stif (cin.fail()) reset_cin();cout << "j? ";int j = 0;cin >> j;  // ← 2ndcout << "i: " << i <<", " << "j: " << j <<'\n';
}

i 的无效输入不会影响 j

$ i? asdf
$ j? 3
i: 0, j: 3

附上原文地址
如果文章对您有用,请随手点个赞,谢谢!^_^
在这里插入图片描述

http://www.yayakq.cn/news/703390/

相关文章:

  • dede企业网站装修设计收费标准2022
  • 建设部网站注册深圳网站建设单位
  • 苏州建设交易中心网站成都游戏网站开发
  • wap网站微信一键登录网站开发业务怎么开展
  • 网站如何设置长尾词编程课网课哪家好
  • 网站建设需要的技术手段用二级页面做网站的源代码
  • 深圳网站的建设保山网站建设服务
  • 简单的旅游网站怎么做wordpress出境游
  • wordpress网站设密码错误网站推广软件排名
  • 网站建设阐述中介公司注册条件
  • 通信的毕设网站建设网站建设价格差异
  • 移动网站制作小语种网站建设
  • 网站中的ppt链接怎么做的七牛云
  • 网站维护年费o2o移动电子商务平台有哪些
  • 网站与微信区别网站建设kaodezhu
  • 河北网站建设搭建网站制作佛山
  • 用html5做的美食网站wordpress电影系统
  • wordpress media.php网站SEO优化托管
  • app和网站哪个有优势宁波软件开发制作
  • 淮安网站排名优化公司在服务器网站上做跳转页面跳转页面
  • 唐山网站建设zzvg百度网站收录提交入口
  • 湖南网站备案需要多久网站设计合同
  • 网站建设公司哪家好?该如何选择什么是网络设计原则
  • 食品网站app建设方案中国建设银行下载
  • 房地产市场信息系统网站做网站要钱的吗
  • 百度网站托管常见的网上购物平台有哪些
  • 网站建设国际深圳南昌淘宝网站制作公司
  • 做网站常德加强门户网站建设 信息公开
  • 湛江网站建设开发网站建设软件培训学校
  • 更换网站程序3322做网站