zoukankan      html  css  js  c++  java
  • 清空输入缓冲区

    /*
    清空输入缓冲区
    cin.clear():清除错误标记,比如要求输入int型,但我们输入了char型,就会导致输入错误,产生错误标记
    cin.sync():清空输入缓冲区
    cin.ignore(n,ch): 第一个参数是清空输入缓冲区的大小,第二个参数是终止字符(注:终止字符也会被丢弃),常用形式有以下两种:
    cin.ignore(1024,' ')
    cin.ignore(numeric_limits<streamsize>::max(),' ')  //此时需要包含头文件<limits>
    注:
    1.如果碰到EOF,ignore()函数也会结束
    2.如果错误标记没有被清除,则即使清除了输入流依然无法进行输入,因此清除错误标记和清除输入缓冲区要结合使用
    */

    #include <iostream>
    #include <limits>
    using namespace std;
    int main()
    {
        int a;
        cout<<"输入一个字母:"<<endl;
        cin>>a;                    //int型变量中放了一个char型数据,输入流处于错误状态
        cout<<"输入一个数字:"<<endl;
        cin>>a;                   //由于输入流处于错误状态,因此无法进行输入
        cout<<a<<endl;               //输出不确定值
    
        cin.clear();               //清除错误标记
        cin.sync();                //清除输入缓冲区
        cout<<"输入一个数字:"<<endl;
        cin>>a;
        cout<<a<<endl;    
        return 0;
    }
  • 相关阅读:
    使用setTimeout()代替setInterval()
    音视频入门-02-RGB拼图
    音视频入门-01-认识RGB
    CMake入门-04-自定义编译选项
    CMake入门-03-还是HelloWorld
    CMake入门-02-HelloWorld扩展
    CMake入门-01-从HelloWorld开始
    HTML页面启动sass监听编译成css文件
    安装+配置Express
    安装+配置Nginx
  • 原文地址:https://www.cnblogs.com/kevinq/p/4491818.html
Copyright © 2011-2022 走看看