C++输入一个整数后接着输入字符串

当我们输入整数,按回车,实际上输入的是:整数和换行符号(\n)。cin把整数读进了,但是换行符号没有读,因此如果接下来输入字符串,即使用cin.getline,首先会读入\n。然后就直接结束了。

下面这个程序需要输入四个字符串并把它们打印出来,可以看到输入三条字符串之后就结束了。

#include<iostream>
#include<string>using namespace std;int main(){int num;string s, w;cin >> num;for (int ii = 0; ii<num; ++ii){getline(cin, s);cout << s << endl;}return 0;

解决方法:

在输入字符串之前先用cin.get()把之前的换行符吸收掉

#include<iostream>
#include<string>using namespace std;int main(){int num;string s, w;cin >> num;cin.get();for (int ii = 0; ii<num; ++ii){getline(cin, s);cout << s << endl;}return 0;
}

或者另一种方法,不用getline获取字符串,直接用cin>>string

#include<iostream>
#include<string>using namespace std;int main(){int num;string s, w;cin >> num;for (int ii = 0; ii<num; ++ii){cin>>s;cout << s << endl;}return 0;
}

这是因为cin>>会自动过滤掉不可见字符(如空格 回车 tab等)

当cin>>从缓冲区中读取数据时,若缓冲区中第一个字符是空格、tab或换行这些分隔符时,cin>>会将其忽略并清除,继续读取下一个字符,若缓冲区为空,则继续等待。但是如果读取成功,字符后面的分隔符是残留在缓冲区的,cin>>不做处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elasticsearch 查看索引_ElasticSearch 索引基本操作

松哥原创的 Spring Boot 视频教程已经杀青&#xff0c;感兴趣的小伙伴戳这里-->Spring BootVue微人事视频教程ElasticSearch 系列第五篇&#xff0c;和大家聊一聊索引的基本操作&#xff0c;前四篇传送门&#xff1a;打算出一个 ElasticSearch 教程&#xff0c;谁赞成&#…

协作机器人鼻祖“重生”,卷土重来的Rethink能否给行业注入一针强心剂?

来源&#xff1a;机器人大讲堂十年之前&#xff0c;他横空出世&#xff0c;创新颠覆 2008年&#xff0c;美国机器人制造专家&#xff0c;麻省理工学院计算机科学与人工智能实验室创始主任罗德尼布鲁克斯创建了Rethink Robotics公司&#xff0c;他将基于行为的人工智能理论和其在…

HTML基础做出属于自己的完美网页

HTML HTML解释&#xff1a; HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写&#xff0c;他是一种制作万维网页面标准语言&#xff08;标记&#xff09;。相当于定义统一的规则&#xff08;W3C&#xff09;&#xff0c;大家都来遵守他&#xff0c;这样就可以让浏…

excel进销存管理系统_【实例分享】勤哲Excel服务器做企业进销存财务管理系统...

如今&#xff0c;企业在推进数字化选型的时常有很多焦虑&#xff0c;难以找到合适的产品正是其中之一。正如一家正在挑选信息化管理软件的企业&#xff0c;对信息化产品的理解与厂商提供的产品可能完全不同&#xff0c;企业真正想要的是具备发货管理之类功能完全贴合企业业务需…

C++ multimap的插入

不同于map&#xff0c;multimap不能使用中括号[]法插入&#xff0c;multimap插入的一种简单做法是&#xff1a; multimap.insert({key, value}) int main(){multimap<int, int> mm;mm.insert({ 1, 2 });mm.insert({ 1, 2 });mm.insert({ 1, 3 });mm.insert({ 5, 6 });m…

人类大脑神经如何进化?寄生虫充当了隐形设计师

来源&#xff1a;网易科技自人类诞生以来&#xff0c;寄生虫就从未停止过与我们的相爱相杀&#xff0c;它们不仅改变了某些人类的进化方向和行为&#xff0c;甚至也影响了大脑神经的进化方式&#xff0c;充当着隐形设计师的角色。美国新墨西哥大学心理学家马可德尔吉迪斯(Marco…

hadoop jar包_【大数据学习】Hadoop的MR分布式开发小实战

前提:hadoop集群应部署完毕。一、实战科目做一个Map Reduce分布式开发&#xff0c;开发内容为统计文件中的单词出现次数。二、战前准备1、本人在本地创建了一个用于执行MR的的文件&#xff0c;文件中有209行&#xff0c;每行写了“这是一个测试文件”的句子。2、将该文件上传至…

最新数据:一图看清全球393家独角兽公司

来源&#xff1a;资本实验室据CB Insights最新数据&#xff0c;截至2019年8月底&#xff0c;全球共有393家未上市公司的估值达到或超过10亿美元以上&#xff0c;也就是我们俗称的“独角兽”公司。这些公司的融资总额超过2920亿美元&#xff0c;平均融资额超过7.43亿美元&#x…

它指导了计算机行业大半个世纪的发展,如今却要走下神坛?

来源&#xff1a;托尼前几天&#xff0c;有这样一条新闻。全球最大的芯片代工巨头台积电&#xff0c;其高管力挺摩尔定律&#xff0c;认为这个定律没有消亡&#xff0c;仍然可以通过增加晶体管密度&#xff0c;实现计算性能的提高。事实上&#xff0c;在摩尔定律是否已经失效这…

nodejs+kafka+storm+hbase 开发

1.环境介绍 如图所示&#xff0c;NODEJS做为数据源的的产生者产生消息&#xff0c;发到Kafka队列&#xff0c;然后参见红线&#xff0c;表示本地开发的环境下数据的流向&#xff08;本地开发时&#xff0c;storm topology运行在本地模式&#xff09; 2.搭建环境,我采用的是ecli…

将代码美观地复制到word的网站

http://www.codeinword.com/ 左边是源代码&#xff0c;右边是排版后的代码&#xff0c;复制右边的代码粘贴到word&#xff0c;可以使得word中的代码美观

c# 网口相机可以通过_电脑可以跑安卓9.0了!完全免费

Android早已超过Windows&#xff0c;坐拥全球用户量最大的操作系统宝座。这么高的人气&#xff0c;当然会有很多可玩性&#xff0c;比如Android -x86项目&#xff0c;即在x86处理器平台上运行Android。据悉&#xff0c;底层升级为Android 9 Pie(android-9.0.0_r50)的x86项目已经…

我的runtime学习笔记

0、简介&#xff1a; OC方法不同于C语言函数&#xff0c;属于动态调用过程&#xff0c;在编译的时候并不能决定真正调用哪个函数&#xff0c;只有在真正运行的时候才会根据函数的名称找到对应的函数来调用。 至于其他理论上的东西不必讲太多&#xff0c;编程讲的就是实用性&…

详解工业机器人和机械手臂的区别

来源&#xff1a;工业机器人目前市场上出现许多机械臂&#xff0c;很多小伙伴不能区分机械臂和机器人是不是同一种概念&#xff0c;今天小编和大伙讲解讲解。机械臂是一种机械装置&#xff0c;可以是自动的也可以是人为控制的&#xff1b;工业机器人是一种自动化设备&#xff0…

php 实时监测网站是否异常_网站跳转劫持解决,网站跳转劫持解决方法只有3步...

某一客户单位的网站首页被篡改&#xff0c;并收到网检的通知说是网站有漏洞&#xff0c;接到上级部门的信息安全整改通报&#xff0c;贵单位网站被植入木马文件&#xff0c;导致网站首页篡改跳转到彩票网站&#xff0c;根据中华人民共和国计算机信息系统安全保护条例以及信息安…

大脑通过统计推理表征“自我”

来源&#xff1a; 脑智卓越中心9月3日&#xff0c;《美国科学院院刊》在线发表了题为《猕猴对自我身体表征的统计推理》的研究论文。该研究由中国科学院脑科学与智能技术卓越创新中心&#xff08;神经科学研究所&#xff09;、上海脑科学与类脑研究中心、灵长类神经生物学重点实…

关于未来50年的工作与生活,三星联合未来学家们做出了这些预测

来源&#xff1a;资本实验室8月底&#xff0c;三星公司为庆祝其位于伦敦的新体验空间Samsung KX投入运营&#xff0c;委托英国的几位专家学者和未来学家们共同研究&#xff0c;并发布了一份题为《三星KX50&#xff1a;聚焦未来》的报告。根据该报告的预测&#xff0c;到2069年&…

Samba Linux 和windows 共享

1.安装Samba (yum install Samba) 2.配置Samba &#xff08;Samba的配置文件为/etc/samba/smb.conf&#xff09; 1&#xff09;打开smb.conf vim /etc/samba/smb.conf 2)将文件中的内容做如下相应修改&#xff1a;    #securityuser 后面添加&#xff1a; secur…

深度!全球机器人产业趋势及特征分析

来源&#xff1a;AI城市智库当前&#xff0c;全球机器人市场规模持续扩大&#xff0c;工业机器人市场增速回落&#xff0c;服务、特种机器人增速稳定。技术创新围绕仿生结构、人工智能和人机协作不断深入&#xff0c;产品在教育陪护、医疗康复、危险环境等领域的应用持续拓展&a…

设计代码说明什么是多态性?如何实现多态?(代码中要写注释解释)_狗屎一样的代码!快,重构我...

关注后你就是我的人了重构不止是代码整理&#xff0c;它提供了一种高效且受控的代码整理技术。&#xff08;一&#xff09;重构原则1、何谓重构对软件内部结构的一种调整&#xff0c;目的是在不改变软件可观察行为的前提下&#xff0c;提高其可理解性&#xff0c;降低其修改成本…