1.cin.get()
(1).cin.get()-------提取单个字符,可以提取回车、空格
a=cin.get();
(2) 同(1)---------------提取单个字符,可以提取回车、空格
cin.get(a);
(3).-------------------不提取  回车
cin.get(字符数组,字符个数n,终止字符);//终止字符可以不写,默认为'\n'
或cin.get(字符指针,字符个数n,终止字符);//终止字符可以不写,默认为'\n'
不可跳过终止符号。需把回车'\n'提取掉
可以写成
cin.get(a,20);
cin.get();
也可以组合写成
cin.get(a,20).get();

2.cin.getline()//---不提取 回车
cin.getline(字符数组 /字符指针,字符个数n,终止标志字符);//终止字符可以不写,默认为'\n'
可跳过终止符号。
即每次读取一整行并把由Enter键生成的换行符抛弃
返回值:此处还待研究,求大神指导。

3.getline()-----------用于  string  字符串的。
getline()     // 接受一个字符串,可以接收空格并输出,需包含“#include<string>”

#include<iostream>
#include<string>
using namespace std;
int main(){string a;getline(cin,a);cout<<a<<endl;return 0;
}

上面代码,如果输入a b c,需要按两次回车键才能显示a b c(在VC6中),因为getline有三个参数, 第三个参数是字符串的结束符,也就是当getline遇到这个结束符时,就不在接受输入了,比如写成getline(cin,st,'s'); 即使输入的是abcsabc 那么也只会显示 abc ,因此对于上面出现的情况,有人说getline默认情况下以回车('\n')作为结束符,第一次按回车表示字符串结束,第二次按回车才开始输出。

4.gets() -----跟  cin.getline()类似,不提取  回车
gets()        // 接受一个字符串,可以接收  空格  并输出,需包含“#include<stdio.h>”
返回值:gets(str) 在读取成功的时候返回str,str保存的是成功读入的内容
在失败的时候返回NULL,str的内容保持不变

#include<iostream>
#include<stdio.h>
using namespace std;
int main(){char a[20];gets(a);        //不能写成a=gets();cout<<a<<endl;return 0;
}

输入:abc
输出:abc
输入:a b c
输出:a b c
类似cin.getline()里面的一个例子,gets()同样可以用在多维数组里面:

#include<iostream>
#include<stdio.h>
using namespace std;
int main (){char a[3][20];for(int i=0; i<3; i++)gets(a[i]);cout<<"--------"<<endl;for(int j=0; j<3; j++)cout<<a[j]<<endl;return 0;
}

输入:
a b 1
a b 2
a b 3
输出:
a b 1
a b 2
a b 3 
感觉gets()和cin.getline()的用法很类似,只不过cin.getline()多一个参数罢了;

5.getchar()
getchar()   //接受一个字符,需包含“#include<stdio.h>”

#include<iostream>
#include<stdio.h>
using namespace std;
int main (){char a;a=getchar();           //   getchar( a )--------写法错误cout<<a<<endl;return 0;
}

输入:abc
输出:a

转载于:https://www.cnblogs.com/bofengyu/p/4477490.html

cin.get(),cin.getline(),getline(),gets(),getchar()相关推荐

  1. C++中cin、cin.get()、cin.getline()、getline()、gets()等函数的用法

    学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行) 1.cin  2.cin.ge ...

  2. cin、cin.get()、cin.getline()、getline()、gets()等函数的用法

    转载,并经过本人补充 cin.cin.get().cin.getline().getline().gets()等函数的用法 2007/10/27 22:51 学C++的时候,这几个输入函数弄的有点迷糊 ...

  3. 【转载】C++中cin、cin.get()、cin.getline()、getline()、gets()函数详解

    学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结: 1.cin 2.cin.get() 3.cin.getline() 4.getline() 5.gets() 6.getchar() 附:c ...

  4. cin、cin.get()、cin.getline()、getline()的区别

    测试平台g++ 5.4.0和VS2015社区版. 输入原理简述: 程序的输入都建有一个缓冲区,即输入缓冲区.每次输入过程是这样的,当一次键盘输入结束时会将输入的数据存入输入缓冲区,而cin函数直接从输 ...

  5. C++中的cin、cin.getline()、getline()函数比较

    1.cin用法 用法1:输入一个数字或字符 // cin用法// 用法1:输入一个数字或字符int a, b;cin >> a >> b;cout << a + b ...

  6. C++中cin、cin.get()、cin.getline()、getline()等函数的用法

    转载:http://www.cnblogs.com/flatfoosie/archive/2010/12/22/1914055.html c++输入流函数主要以下几个: 1.cin 2.cin.get ...

  7. (转)cin cin.get cin.getline cin

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

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

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

  9. cin、cin.get()、cin.getline()、getline()总结

    前言 总结一波cin的详细用法 正文 cin介绍 cin 是 C++ 的标准输入流对象,即 istream 类的对象.cin 主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘.此外,cou ...

  10. C++中cin、cin.get()、cin.getline()、getline()、gets()、getchar()、scanf()等函数的用法

    转自:https://www.cnblogs.com/luolizhi/p/5746775.html 1.cin>> 用法1:最基本,也是最常用的用法,输入一个数字: #include & ...

最新文章

  1. R语言与概率统计(六) 主成分分析 因子分析
  2. 担心被机器人抢饭碗?亚马逊教 10 万员工这样保住工作
  3. 一个顶级程序员要多久才能独自写完Win10代码?
  4. vim 配置_「go」 配置vim用于go 开发
  5. 被外包程序员植入了后门程序,触发后删除数据库但他们死不承认,该怎么办?...
  6. 麻将 (Standard IO)
  7. 系统动力学仿真软件Vensim下载
  8. 微信支付SDK使用总结
  9. 智能车浅谈——抗干扰技术硬件篇
  10. unity地形模块学习
  11. 解读!《国家职业教育改革实施方案》要点来啦!
  12. proteus教程——并行扩展静态RAM
  13. 【学习笔记】严格反馈和纯反馈系统
  14. 家庭影院投影仪比较,哪个投影仪的牌子好
  15. 天黑以后 博客_学习编码:天黑了
  16. HTML 正则表达式 输入框数字+字母、数字 四位数
  17. 如何使用ArcGIS裁剪栅格图
  18. 黑苹果big sur_做坚强的乙方:不讲价、不改图、不接受建议、怼乔布斯,还让BIG排队等!...
  19. 五年级上册数学计算机和应用题,2017五年级上册数学应用题及答案
  20. png和jpg哪个质量更好

热门文章

  1. AI学习笔记(十九)循环神经网络
  2. python 直线虚线_python – matplotlib中的虚线而不是缺失值
  3. Deep_Rank,经典ctr系列预估模型复现框架
  4. css3之 谜灯卡片_纯css3灯泡开关特效代码
  5. java setenabled不好用,哪个更好,setEnabled或setUserInteractionEnabled?
  6. 2020身高体重标准表儿童_2019年0~12岁儿童身高体重标准表出炉了,你家娃达标没...
  7. 高二学生学习计算机软件,精选高二信息技术教学计划三篇
  8. 对象tostring后怎么转成对象_给对象发语音学猫叫后,对象说晚上要弄哭我.........
  9. beego 最新版本_优麒麟20.10版本发布-
  10. Django 前后端数据传输、ajax、分页器