zoukankan      html  css  js  c++  java
  • cin对象的一些常用方法使用总结

    >> 最初定义的是右移,当但是出现在 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(3,'
    ');
        cin>>a;
        cout<<"a:"<<a<<endl;
    }
    输入:ww
    输入:Hello
    输出:a:Hello
    

      

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

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

      

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

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

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

  • 相关阅读:
    java小知识点5
    java小知识点4
    java小知识点3
    编程之法:面试和算法心得(寻找最小的k个数)
    389. Find the Difference
    104. Maximum Depth of Binary Tree
    485. Max Consecutive Ones
    693. Binary Number with Alternating Bits
    463. Island Perimeter
    566. Reshape the Matrix
  • 原文地址:https://www.cnblogs.com/foreverW/p/7208977.html
Copyright © 2011-2022 走看看