std::basic_istream<CharT,Traits>::peek
来自 cppreference.com
< 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> 的公共成员函数) | |
提取字符 (公共成员函数) | |
取消提取一个字符 (公共成员函数) |