std::basic_istream<CharT,Traits>::peek
< cpp | io | basic istream
int_type peek(); |
||
表现为无格式输入函数 (UnformattedInputFunction) 。构造并测试 sentry 对象后,从输入流读取下个字符而不释出它。
参数
(无)
返回值
若 good() == true ,则返回获得自 rdbuf()->sgetc() 的下个字符。
否则,返回 Traits::eof() 。
异常
若内部操作抛出异常,则捕获它并设置 badbit 。若对 badbit
设置了 exceptions() ,则重抛该异常。
示例
运行此代码
#include <sstream> #include <iostream> 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> 的公开成员函数) | |
从流中读并取走(移除类似指针向下一个元素移动)一个字符 (公开成员函数) | |
撤销流中刚取走(移除,类似指针向后退回一个位置)的字符 (公开成员函数) |