C++之cin.ignore, cin.peek, cin.putback

来源:互联网 发布:打车软件数据库设计 编辑:程序博客网 时间:2024/06/01 12:42

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窥视到最近一次指针的移动。

0 0
原创粉丝点击