>> 最初定义的是右移,当但是出现在 cin >>中的时候这个符号被重载了,变成了一个流操作,在用户通过键盘输入信息的时候,所有内容都会先直接存储在一个叫输入缓冲区的的地方,cin >> 就会直接像从输入缓冲区中直接读取按照你所提供的要求的类型的数据。

cin.peek();  这个方法是取得输入流中的第一个字符进行其他操作如比较,但是不影响输入流中的数据。

#include<iostream>
using namespace std;
int main()
{
string b;
int a;
char c;
cin>>a;
c=cin.peek();
cin>>b;
cout<<"a:"<<a<<endl<<"c:"<<c<<endl<<"b:"<<b<<endl;
}
输入:123asd
输出:a:123
输出:c:a
输出:b:asd

  cin.get(); 就是从输入流中读取一个字符,输入流的数据被取走。

#include<iostream>
using namespace std;
int main()
{
string b;
int a;
char c;
cin>>a;
c=cin.get();
cin>>b;
cout<<"a:"<<a<<endl<<"c:"<<c<<endl<<"cin.get:"<<b<<endl;
}
输入:123asd
输出 :a:123
输出:c:a
输出:cin.get:sd

  

cin.ignore(n,ch);  这个方法的功能就是将输入流中取出一个一个字符,并且每取出一个字符都会进行比较操作,如果取出字符个数等于n停止操作,如果遇到ch字符也停止操作,这个函数可以用来比如消除上一次输入对下一次输入的影响。

#include<iostream>
using namespace std;
int main()
{
string a;
cin.ignore(,'\n');
cin>>a;
cout<<"a:"<<a<<endl;
}
输入:ww
输入:Hello
输出:a:Hello

  

cin.getline(str,n,ch); 它实现的功能是从输入流从接收n个字符到str变量中,ch是结束字符如果不给出这个参数那就默认为'\0',就是当遇到ch这个字符的时候停止接收。

#include<iostream>
using namespace std;
int main()
{
char a[];
cin.getline(a,,'o');
a[]='\0';
cout<<a<<endl;
}
输入:Hello
输出:Hell

  

cin.gcount(); 的功能是获取一个字符变量中包括空白字符的个数。

#include <iostream>
using namespace std;
int main ()
{
char str[];
cin.getline(str,);
cout << cin.gcount() << '\n';
return ; }
输入:Hello
输出:6

  cin.read(); 和cin.getlie(); 的区别就是cin.getline(); 只能读取一行的内容,而cin.read();不限定行数直到到达结束标志为止。

cin对象的一些常用方法使用总结的更多相关文章

  1. cin 对象取值过程详解

    突然又空,鉴于对cin对象的去值机制还不是很了解,就探究一番,并且记下来,方便以后复习. #include <iostream> int main(void) { using namesp ...

  2. 输入cin对象的用法

    #include<iostream> using namespace std; int main() { int carrots ; cout << "How man ...

  3. javascript之数组对象与数组常用方法

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Opencv3 Mat对象构造函数与常用方法

    构造函数 Mat() Mat(int rows,int cols,int type) Mat(Size size,int type) Mat(int rows,int cols,int type,co ...

  5. iOS开发基础:OC数组对象NSArray的常用方法

    本文介绍了OC的数组对象的基本方法的使用: 因为OC的数组中存储的为对象类型,所以我们可以新建一个Person类,通过Person生成对象进行操作. 其中Person.h中的代码为: [objc] v ...

  6. JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)

    1.min()和max()方法 Math.min()用于确定一组数值中的最小值.Math.max()用于确定一组数值中的最大值. alert(Math.min(2,4,3,6,3,8,0,1,3)); ...

  7. IO,File对象-构造函数和常用方法

    import java.io.File; import java.text.DateFormat; import java.util.Date; public class FileDemo { pub ...

  8. BOM对象中的常用方法

    先看body中的内容: <body οnlοad="demo1()"> <p> <input type="button" id=& ...

  9. js数组对象的一些常用方法

    pop:删除数组最后一个元素 语法: array.pop(); 如 var array = ['1','2','3']; array.pop(); 返回结果:[‘1’,‘2’]此方法会改变数组的长度 ...

随机推荐

  1. Babelfish (关于map<string,string>的用法

    题目链接:https://vjudge.net/contest/237395#problem/A 学习博客:https://blog.csdn.net/lyy289065406/article/det ...

  2. Gym 100971B Derangement

    要求改换序列,使得没有位置是a[i] == i成立.输出最小要换的步数 首先把a[i] == i的位置记录起来,然后两两互相换就可以了. 对于是奇数的情况,和它前一个换或者后一个换就可以,(注意前一个 ...

  3. SQL Server 脚本跟踪

    1.查询 DataBasesID select db_id('regdatas') 2.获取进程ID 3.过滤定位

  4. mysql日常使用总结(持续更新中)

    记录一些日常的mysql常用的使用, 方便随用随查. 一.表结构 1.1 查看表结构 方式1: 可以查看建表语句,完整的表结构. show create table table_name; 方式2:可 ...

  5. nginx去掉url中的index.php

    使用情境:我想输入www.abc.com/a/1后,实际上是跳转到www.abc.com/index.php/a/1 配置Nginx.conf在你的虚拟主机下添加: location / {      ...

  6. Centos7搭建redis,同一服务器启动两个端口的redis

    1.安装redis [1]下载安装包 #准备安装文件夹 mkdir /usr/local/soft/redis #进入文件夹 cd /usr/local/soft/redis #下载安装包 wget ...

  7. Java学习笔记--字符串和文件IO

    1.Java中的字符串类和字符的表示 2.区分String,StringBuilder和StringBuffer 3.从命令行中给main方法传递参数 4.文件操作 1 Java中的字符串和字符 1. ...

  8. 《Head First 设计模式》之策略模式——鸭子行为

    策略模式(Strategy Pattern) ——定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户. (每个功能的多种实现成为一个算法族,这些算法族被分别封装 ...

  9. 【解决】Git failed with a fatal error. Authentication failed for ‘http://......’

    今天在visual studio中运行项目,打算pull最新的代码的时候,报错: Git failed with a fatal error. Authentication failed for ‘h ...

  10. win10+asp+access 父路径开启无效

    如题: 在win10环境下,布署asp+access,发现在用到"../website/"时就出错,提示不能使用父路径 可是我在IIS 的asp中明明打开了父路径的 如下 但是偏偏 ...