4

我如何才能读取第一个新的“令牌”(标准的非空白字符序列,由 operator>> 精美地提取)而不将其从流中删除?我可以提取字符串,检查是否需要放回去,然后重置内部流迭代器吗?我认为这可能有效,但不知道如何实现它......

例子:

#include <string>
    using std::string;
#include <sstream>
    using std::stringstream;

int main()
{
    string s("test string \\ bla blie");
    stringstream ss(s);

    string token;
    while( ss >> token )
    {
        if( "\\" == token )
            break;
        else
            cout << "Token is: " << token << "\n";
    }
    return 0;
}

a tellgand会seekg在流提取之前和之后有条件地工作吗?

谢谢!

4

1 回答 1

4

在流提取之前和之后,tellg 和 seekg 会在这里工作吗?

是的。

于 2010-12-04T19:20:55.650 回答