peek函数

该调用形式为cin.peek() 其返回值是一个char型的字符,其返回值是指针指向的当前字符,但它只是观测,指针仍停留在当前位置,并不后移。如果要访问的字符是文件结束符,则函数值是EOF(-1)。

其功能是从输入流中读取一个字符 但该字符并未从输入流中删除

若把输入流比作一个队列,那么这里的peek函数就相当于队列的成员函数front(),而cin.get()则相当于队列的成员函数pop()。

下面这段代码能帮助您更清晰地理解peek函数

/ istream peek

#include <iostream>

using namespace std;

int main () {

char c;

int n;

char str[256];

cout << "Enter a number or a word: ";

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;

}

相关词汇