1.cin用法

  • 用法1:输入一个数字或字符

        // cin用法// 用法1:输入一个数字或字符int a, b;cin >> a >> b;cout << a + b << endl;
    
  • 用法2:用于接收一个字符串,遇到空格,TAB键、回车就结束
            // 用于接收一个字符串,遇到空格,TAB键、回车就结束char aa[20];cin >> aa;cout << aa << endl;
    

2.cin.getline()用法

  • 用法:接收一个字符串,可以接收空格并输出

        char bb[20];cin.getline(bb, 5);cout << bb << endl;   // 接收5个字符到bb中,其中最后一个为'\0',所以只看到4个字符输出
    
  • 延伸知识点:
    • cin.getline()实际上有三个参数,cin.getline(接收字符串的变量,接收字符个数,结束字符)
    • 当第三个参数省略时,系统默认为’\0’
    • 如果将例子中cin.getline()改为cin.getline(bb,5,‘a’);当输入jlkjkljkl时,输出jklj;输入jkaljkljkl时,输出jk

3.getline()用法

  • 用法:接收一个字符串,可以接收空格并输出,需包含#include

        string str;getline(cin, str);cout << str << endl;
    

4.注意的问题:

  • cin.getline()属于istream流,而getline()属于string流,是不一样的两个函数
  • 当同时使用cin >>,getline()时,需要注意的是,在cin >> 输入流完成之后,getline()之前,需要通过下面的两种方法作为输入流cin以清除缓存,如果不这样做的话,在控制台上就不会出现getline()的输入提示,而直接跳过,因为程序默认地将之前的变量作为输入流。
    • 方法一:str="\n"; getline(cin,str);
    • 方法二:cin.clear(); cin.sync();
            string s1;string s2;cin>>s1;cout << "s1 is :" << s1 << endl;cin.clear();cin.sync();getline(cin, s2);cout << "s2 is :" << s2 << endl;
    

5.参考博客

博客链接

C++中的cin、cin.getline()、getline()函数比较相关推荐

  1. C++中的几个输入函数:cin,cin.get(),getline(),cin.getline() 的区别

    目录 cin>> cin.get() getline() cin.getline() cin>> 属于istream流 1)用于输入数字. #include <iostr ...

  2. (转)cin cin.get cin.getline cin

    (转)cin cin.get cin.getline cin<<的结束符有enter space tab cin.get()的结束符只有enter,但会把enter放入队列等待 cin.g ...

  3. C++输入cin,cin.get(),cin.getline()详细比较及例子

    C++输入过程中,是把输入加载到缓冲区中,然后对缓冲区中的字符进行读取.cin,cin,get(),cin.getline()三个函数虽然都能进行数据读取,但是它们对缓冲区内数据的处理方法是不同的(如 ...

  4. 关于scanf 与 cin gets(),getline()......输入输出字符串的区别

    很对人对于字符串的输入输出一直是比较模糊的,今天总结一下几个常用的输入流符号对于输入字符串时的区别: 1.scanf(),首先 它遇到空格或回车键(\n)就会结束,并且会将回车符算入字符串中: 2.c ...

  5. C++:while(getline())函数

    首先说明getline()的原型:getline(istream &is,string &str,char delim) istream &is表示一个输入流,譬如cin,st ...

  6. 习题 6.20 用指向指针的指针的方法对n个整数排序并输出。要求将排序单独写成一个函数。整数和n在主函数中输入。最后在主函数中输出。

    C++程序设计(第三版) 谭浩强 习题6.20 个人设计 习题 6.20 用指向指针的指针的方法对n个整数排序并输出.要求将排序单独写成一个函数.整数和n在主函数中输入.最后在主函数中输出. 代码块: ...

  7. 最近,又发现了 Pandas 中三个好用的函数

    作者 | luanhz 来源 | 小数志 导读 近日,在github中查看一些他人提交的代码时,发现了Pandas中这三个函数,在特定场景中着实好用,遂成此文以作分享. 程序的基本结构大体包含三种,即 ...

  8. R语言层次聚类(hierarchical clustering):特征缩放、抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员)、基于主成分分析的进行聚类结果可视化

    R语言层次聚类(hierarchical clustering):特征缩放.抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员).基于主成分分析的进行聚类结果可视化 ...

  9. excel中最常用的30个函数_最常用日期函数汇总excel函数大全收藏篇

    在我们的实际工作中,经常需要用到日期函数.日期函数那么多,你还只会用函数TODAY吗?那你就OUT了.今天一起来看下常用日期函数的用法! 1.DATE 函数DATE:返回在日期时间代码中代表日期的数字 ...

  10. [转载]在Eclipse CDT中编译含有多个main函数的项目

    在Eclipse CDT中编译含有多个main函数的项目 在C/C++项目中有时候会需要在一个项目中包含多个main函数.在Visual Studio中,这种情况可以由一个解决方案下带多个项目来解决, ...

最新文章

  1. java 连续运算_JS连续运算
  2. xampp的Apache无法启动解决方法
  3. 广东发展银行系统分析师面试问题
  4. centos 忘记root密码_Linux忘记root密码解决方案
  5. linux操作系统2试题,RedHat Linux 9.0 操作系统测试题2
  6. 仍然报错_only_full_group_by配置,竟让所有应用报错?
  7. 会计基础模拟练习一(3)
  8. Python机器学习:SVM006什么是核函数?
  9. 【Clickhouse】Clickhouse 数据字典
  10. Zabbix通过自动发现监控端口
  11. 地区picker 各选择器,优劣分析
  12. 这 173 家牛逼的互联网国企!值得你加入
  13. flutter 修改app名字和图标(安卓)
  14. IIS无法启动问题的解决
  15. unity屏幕分辨率设置
  16. 金融行业相关知识点整理
  17. (个人理解+转载)ANSI/ASCII/UTF8/UNICODE/GB2312/UCS-2/UTF16-文本的编码格式
  18. 网安面试题(common)
  19. 神经元网络技术有限公司,神经网络网站
  20. 虚拟串口工具MCGS开发调试的灵活应用教程

热门文章

  1. 行业深度见解•SD-WAN对于企业云的重要性
  2. 【译】Web Components简介
  3. 如何写出优质干净的代码,这6个技巧你不能错过!
  4. 简单读!tomcat源码(一)启动与监听
  5. python 内置方法
  6. 一位10年程序员生涯的总结与经验忠告分享
  7. IIRF重写在asp.net4.0+IIS6中部分失败的解决方案
  8. Java中的等待/通知机制(wait/notify)
  9. 购买IBM System x3650 M4十大理由
  10. ASP.NET弹出对话框几种基本方法【】