putback函数调用形式为cin.putback(ch),其作用是将前面用get或者getline函数从输入流中读取的字符ch返回到输入流,插入到当前指针的位置,供后面读取。
定义:
直观一点就是把输入流里的内容看做是一个字符串的列队 里面存放的都是一个一个的字符 而这里的putback函数就相当于列队里的push函数。
表现形式
定义:
直观一点就是把输入流里的内容看做是一个字符串的列队 里面存放的都是一个一个的字符 而这里的putback函数就相当于列队里的push函数。
表现形式
下面这段代码能帮助您更清晰的理解get 和 putback函数 :
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <cctype>
#include <algorithm>
using namespace std;
int main()
{
char c;
int n;
char str[256];
cout << "Enter a number or a word: ";
c = cin.get();
if ( (c >= '0') && (c <= '9') )
{
cout << c << " --- the middle output" << endl;
cin.putback (c);
cin>> n;
cout<< "You have entered number " << n << endl;
}
else
{
cout << c << " --- the middle output" << endl;
cin.putback (c);
cin>> str;
cout<< " You have entered word " << str << endl;
}
return 0;
}