getline函数的作用

getline(cin, inputLine);

其中 cin 是正在读取的输入流,而 inputLine 是接收输入字符串的 string 变量的名称。下面的程序演示了 getline 函数的应用:

注意:getline输入与cin输入有不同之处。
当 cin 读取数据时,它会传递并忽略任何前导白色空格字符(空格、制表符或换行符)。一旦它接触到第一个非空格字符即开始阅读,当它读取到下一个空白字符时,它将停止读取。

而getline函数可读取整行,包括前导和嵌入的空格,并将其存储在字符串对象中。

代码实例如下:

#include <iostream>
#include <string> // Header file needed to use string objects
using namespace std;int main()
{string name;string city;cout << "Please enter your name: ";cin >> name;cout << "Enter the city you live in: ";cin >> city;cout << "Hello, " << name << endl;cout << "You live in " << city << endl;return 0;
}

程序结果如下:

Please enter your name: John Doe
Enter the city you live in: Hello, John
You live in Doe

请注意,在这个示例中,用户根本没有机会输入 city 城市名。因为在第一个输入语句中,当 cin 读取到 John 和 Doe 之间的空格时,它就会停止阅读,只存储 John 作为 name 的值。在第二个输入语句中, cin 使用键盘缓冲区中找到的剩余字符,并存储 Doe 作为 city 的值。
而用getline函数就可以避免这个问题,代码如下:

#include <iostream>
#include <string> // Header file needed to use string objects
using namespace std;
int main()
{string name;string city;cout << "Please enter your name: ";getline(cin, name);cout << "Enter the city you live in: ";getline(cin, city);cout << "Hello, " << name << endl;cout << "You live in " << city << endl;return 0;
}

程序结果如下:

Please enter your name: John Doe
Enter the city you live in: Chicago
Hello, John Doe
You live in Chicago

getline函数的作用相关推荐

  1. C++的get()函数与getline()函数使用详解

    点击蓝字 关注我们 来源自网络,侵删 一.C++的get()函数使用详解 1.C++ get()函数 get()函数是cin输入流对象的成员函数,它有3种形式: 无参数的: 有一个参数的: 有3个参数 ...

  2. c语言getline作用,C/C++中常用的getline函数

    一直纠结怎么区分getline(), fgets(),gets()以及C语言中得getline()函数,今天稍微整理一下. 1.c++中得getline()函数: 这个使用的是string 的IO操作 ...

  3. C++中的getline函数

    C++中本质上有两种getline函数,一种在头文件< istream >中,是istream类的成员函数.一种在头文件< string >中,是普通函数. 一.在< i ...

  4. C++ 多种定义的getline函数使用

    getline()函数是一个比较常见的函数.根据名字直接望文生义,就知道这个函数是来完成读入一行数据. 下面就对C++ – getline()函数的用法说明,以及getline()函数作为while条 ...

  5. C++ getline()函数的用法

    getline()函数是一个比较常见的函数.根据名字直接"望文->生义",就知道这个函数是来完成读入一行数据. 下面就对C++ -- getline()函数的用法说明,以及g ...

  6. getline函数介绍

    今天,小编将为大家讲解有关getline函数的相关知识. 目录 一.cin.getline(char* s, streamsize n, char delim) 二.getline(istream&a ...

  7. C++ getline函数用法

    转载自:https://www.cnblogs.com/xiaofeiIDO/p/8574042.html ** C++ getline函数用法 ** 在C++中本质上有两种getline函数: 第一 ...

  8. getline函数的用法

    getline函数的用法     原文链接:https://blog.csdn.net/MisterLing/article/details/51697098 在C++中本质上有两种getline函数 ...

  9. getline函数详解

    https://zhidao.baidu.com/question/377613227.html C++中本质上有两种getline函数,一种在头文件<istream>中,是istream ...

最新文章

  1. 中国电子信息工程科技发展十大趋势(2019)发布
  2. DateGridView的外观美化
  3. session与cookie的区别
  4. Activity的launchMode和任务栈小结
  5. 如何测试机房的速度和带宽?
  6. 韩嫕:坚持coding
  7. Swin Transformer V2!MSRA原班人马提出了30亿参数版本的Swin Transformer!
  8. 黄聪:bootstrap中模态框modal在苹果手机上会失效
  9. 楼层平面放线及标高实测记录_建筑工程定位放线技术交底施工单位测量人员必备...
  10. mysqlL时间戳和时间的获取/相互转换/格式化
  11. 简单async数据分批处理
  12. PRCV2018|美图短视频实时分类挑战赛冠军解决方案介绍
  13. java平均数函数_java求平均数的函数
  14. pytorch入门教程(一):Tensor###tensor好好好####
  15. Bryntum Gantt 5.2.2 New-Crack
  16. C语言中的语法错误和语义错误
  17. SAP概念之利润中心(Profit Center)
  18. 演讲如何克服紧张情绪
  19. linux脚本一致性判断,生产环境之文件一致性检测脚本
  20. python 拼音汉字和识字,python-pinyin

热门文章

  1. 移动立方体算法(MC)
  2. Seata四大模式之XA模式详解及代码实现
  3. mysql如何设置缓存_mysql中缓存如何设置
  4. 斜率优化详解(超详细, 有图有代码有注释)
  5. 【win32】GetDlgItem(函数详解)
  6. Android培训班(51)
  7. ' * '的几种使用方法
  8. uglifyjs 压缩js代码使用指南
  9. 一天走七万步是什么体验?
  10. Vue3中key的作用和工作原理