C++中的peek()函数及其用法

Posted 薛定谔的猫ovo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++中的peek()函数及其用法相关的知识,希望对你有一定的参考价值。

peek()函数

 其调用形式为cin.peek(),返回值是一个char类型的字符,其返回值是指向指向的当前字符,如果要访问的字符是文件结束符,则函数值是EOF(-1)。
 但只是做观测使用,即指针仍停留在当前位置,并不后移。其功能是从输入流中读取一个字符,但该字符并未从输入流中删除。
 若把输入流比作一个队列,那么peek()函数相当于队列的成员函数front(),而cin.get()则相当于队列的成员函数pop()

使用实例

#include<bits/stdc++.h>
using namespace std;

int main ()
{
    char c;
    int n;
    char str[256];
    cout << "Enter a number or a word: "<<endl;
    for(int i=0; i<3; i++){
        c=cin.peek();
        if ( (c >= '0') && (c <= '9') ){
            cin >> n;
            cout << "You have entered number " << n << endl;
        }
        else{
            cin >> str;
            cout << "You have entered word " << str << endl;
        }
    }
    return 0;
}

 运行结果:
在这里插入图片描述

以上是关于C++中的peek()函数及其用法的主要内容,如果未能解决你的问题,请参考以下文章

Python中的基本函数及其常用用法简析

请教peek()与eof()的用法

C++中内联函数的用法

在 C++ 中通过 'recv' 和 'MSG_PEEK' 获取套接字中可用的字节数

string类以及其常用的成员函数

是否有任何工具可以可视化模板/类方法及其用法?