1、cin.ignore
istream& ignore(streamsize n = 1, int delim = EOF)
功能:跳过流中n个字符,或者遇到结束符为止,第一个参数默认跳过一个字符,第二个参数默认为eof
2、cin.peek
int peek()
功能: 窥视最近一次移动的指针,函数本身并不操作指针
3、cin.putback
istream& putback(char c)
功能:将字符c插入到当前的指针位置。
4、示例
#include<iostream>
#include<string.h>
using namespace std;
int main() {
char buf[1024];
cin.get(buf, 10, '/');
cout << buf << endl;
memset(buf, 0, sizeof(buf));
cin.ignore(100, 'i');
cin.putback('i');
char peek = cin.peek();
cout << "peek = " << peek << "---" << endl;
cin.get(buf, 1024, '/');
cout << buf << endl;
system("pause");
return 0;
}
输出结果:
cin.ignore一致跳到了字母i,包括字母i,通过cin.putback把跳过的字母i添加回来,cin.peek窥视到最近一次指针的移动。