eof函数
作用:end of file ,文件结束,从输入流读取数据;
返回值:如果到达文件末尾(遇到文件结束符),eof函数值为非零值,否则为假;
示例:
#include<iostream>
using namespace std;
int main()
{
char c;
while (!cin.eof())
{
if ((c = cin.get()) != ' ')
{
cout.put(c);
}
}
return 0;
}
peek函数
作用:观测下一个字符;
用法:c = cin.peek();
返回值:指针指向的当前字符;
说明:它知识观测,指针仍然停留在当前位置,并不后移;如果观测的字符是文件结束符,则函数值为EOF(即-1);
putback函数
作用:将前面用get或getline函数从输入流中读取的字符ch返回到输入流,插入到当前指针位置;
用法:cin.putback(ch);
示例:
#include<iostream>
using namespace std;
int main()
{
char c[20];
int ch;
cout << "please enter a sentence:" << endl;
cin.getline(c, 15, '/');
cout << "The first part is:" << c << endl;
ch = cin.peek();
cout << "The next character is:" << ch << endl;
cin.putback(c[0]);
cin.getline(c, 15, '/');
cout << "The second part is:" << c << endl;
return 0;
}
ignore函数
作用:跳过输入流中n个字符;
用法:cin.ignore(跳过字符数n,终止字符);
类型:
- 有两个参数
cin.ignore(5,'A');
- 无参数/只有一个参数
ignore();//相当于ignore(1,EOF)
补充
以上介绍的各个成员函数,可以用cin流对象和istream类的其他流对象调用