1.面向行输入:getline() ---其实还可以接受第三个参数。

  • getline()函数读取整行,调用该方法
  • 使用cin.getline()。该函数有两个参数,
  • 第一个参数是是用来存储输入行的数组的名称,
  • 第二个参数是要读取的的字符数。若这个参数为20,则函数最多读取19个字符加一个空字符。
  • getline()函数每次读取一行,通过换行符确定行尾,但不保存换行符。在哪存储字符串时,他用空字符来替换换行符。
cin.getline(array,20); //表示将把一行读入到array数组中,前提是这行字符不超过19个,

1. get()函数(有三种用法)

  • 该函数有几种变体,其中一种变体的工作方式与getline()类似,接收参数和解释参数发方式也相同,并且都读到行尾。
  • get()不会丢弃换行符。而是将其留在输入队列中。
  • 若连续两次调用get(),由于第一次调用后,换行符将留在输入队列中。因此第二代次调用时看到的第一个字符便是换行符,因此get()认为已到达行尾,而没有发现任何可取的内容。
cin.get(array1, Size);
cin.get(array2, Size);
  • 使用不带任何参数的cin.get(),可读取下一个字符(包括阔换行符),用它处理换行符,为读取下一行输入做好准备,可以解决上面的问题。
cin.get(array1, Size);
cin.get();
cin.get(array2, Size);
  • 将两个类成员函数合并
cin.get(array, Size),get();  //cin.get()返回一个cin对象,该对象被用来调用get()函数
  • 将输入中连续的两行分别读入到数组name1和name2中,效果和两次调用cin.getline()相同。
cin.getline(name1, Size).getline(name2, Size);

  

 

  

2. getline()和get()的更多相关文章

  1. getline数据来源你的三种方式

    (1)getline从交互式的用户输入中\c中获取内容: # awk 'BEGIN {system("echo \"Input your name:\"");g ...

  2. awk中的system和getline的用法

    system只能对命令的输出结果输出到终端. getline在awk中可以使命令的输出结果传到一个变量中保存. # awk 'BEGIN{system("date")|getlin ...

  3. antlr.collections.AST.getLine()I异常

        antlr.collections.AST.getLine()I异常 Struts+hibernate+spring项目经常遇到问题 因为Struts自带的antlr-2.7.2.jar,比H ...

  4. 记一次程序排错与std::getline

    今天忙活了半个下午,查找正式环境上面一个程序的问题.这个程序的作用是监控文件夹,处理每一个文件,分析每个文件的每行记录,然后将这个文件拆分成两个结果文件投放到另外两个不同的目录下面去,当处理完这个文件 ...

  5. 用流来读取文件(getline,istringstream)

    ifstream infile("fileanme"); 原型:getline(istream &infile, string &line); 函数说明:读取文件中 ...

  6. cin, cin.getline等函数

    char s[100]; cin>>s;         // 输入一个字符串,遇“空格”.“TAB”.“回车”都结束 cin.getline(s, 20);    // cin.get( ...

  7. getline函数彻底说明

    因为之前每次使用这个函数都要在网上查一遍,觉得很麻烦,这次就认真地整理一下,希望写完之后就记住. getline函数其实有两个: 一个是全局函数,include<cstring>, 原型是 ...

  8. getline()函数

    这是一篇关于getline()函数的博客,以总结对输入输出流的掌握,不再在这些问题上栽跟头~ -------------------------- 1.首先我们知道,getline()函数的基本作用, ...

  9. C++IO关于cin>>和getline的理解

    这个问题困扰了我有一段时间了,趁着十一放假有时间,仔细研究了一下 首先来看一下输入输出运算符cin>>的构成:cin和>> cin>>是由两部分构成的,cin和&g ...

  10. getline函数的用法

    函数声明 bool getline(istream &in, string &s) 功能说明: 从输入流读入一行到变量string s,及时是空格也可以读入. –直到出现以下情况为止: ...

随机推荐

  1. spring使用之旅(一) ---- bean的装配

           基础配置 启用组件扫描配置                     Java类配置文件方式 package com.springapp.mvc.application;   import ...

  2. C#要点补充

    1字符串与时间的互转 DateTime.TryParse将空字符串.为null或格式不正确,则转换为的DateTime所代表的值为:0001/1/1 0:00:00,此为DateTime.MinVal ...

  3. 【Java学习笔记之十八】Javadoc注释的用法

    Javadoc注释的用法 Java 文档 // 注释一行/* ...... */ 注释若干行/** ...... */ 注释若干行,并写入 javadoc 文档 通常这种注释的多行写法如下: /*** ...

  4. Gym 100952A&&2015 HIAST Collegiate Programming Contest A. Who is the winner?【字符串,暴力】

    A. Who is the winner? time limit per test:1 second memory limit per test:64 megabytes input:standard ...

  5. 2017ecjtu-summer training #4 UESTC 1584

    此题链接 http://acm.uestc.edu.cn/#/problem/show/1584 此题和hdu1541几乎完全一样,我们要先对坐标排序,再进行操作. hdu1541题解 http:// ...

  6. ElasticSearch + xpack 使用.md

    ElasticSearch 是一个高可用开源全文检索和分析组件.提供存储服务,搜索服务,大数据准实时分析等.一般用于提供一些提供复杂搜索的应.我们为什么要选择 ElasticSearch ?因为它是一 ...

  7. 小白的Python之路 day5 模块XML特点和用法

    模块XML的特点和用法 一.简介 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀,至今 ...

  8. oracle修改表列名和列类型

    --修改列名alter table 表名 rename column 旧列名 to 新列名;--修改列类型alter table 表名 modify (列名varchar(255));

  9. MySql Host is blocked because of many connection errors;

    错误:Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 原因: 同一个i ...

  10. mysql 批量更新与批量更新多条记录的不同值实现方法

    作者: 字体:[增加 减小] 类型:转载 时间:2013-10-02 我要评论 在mysql中批量更新我们可能使用update,replace into来操作,下面小编来给各位同学详细介绍mysql ...