std::basic_istream<CharT,Traits>::peek
来自 cppreference.cn
< cpp | io | basic istream
int_type peek(); |
||
行为如同 UnformattedInputFunction。在构造和测试哨兵对象之后,从输入流读取下一个字符,但不提取它。
目录 |
[编辑] 参数
(无)
[编辑] 返回值
如果 good() == true,则返回通过 rdbuf()->sgetc() 获得的下一个字符。
否则,返回 Traits::eof()。
[编辑] 异常
如果内部操作抛出异常,则会捕获它并设置 badbit。如果为 badbit
设置了 exceptions(),则重新抛出该异常。
[编辑] 示例
运行此代码
#include <iostream> #include <sstream> int main() { std::istringstream s1("Hello, world."); char c1 = s1.peek(); char c2 = s1.get(); std::cout << "Peeked: " << c1 << " got: " << c2 << '\n'; }
输出
Peeked: H got: H
[编辑] 参见
从输入序列中读取一个字符,但不推进序列 ( std::basic_streambuf<CharT,Traits> 的公有成员函数) | |
提取字符 (公有成员函数) | |
撤销提取一个字符 (公有成员函数) |