ifstream获得下一个角色

时间:2014-03-16 00:24:50

标签: c++ while-loop character ifstream

所以我有一会儿检查文件中的每个字符。

while (infile.get(ch))

问题是在同一个循环中我必须检查下一个字符以检查一些验证。

无论如何我可以移动下一个角色,同时跟踪当前角色吗?

由于

1 个答案:

答案 0 :(得分:0)

使用peek()方法,这样您就可以在提取之前查看下一个字符。这是一个例子:

std::istringstream iss("ABC");

for (char c; iss.get(c); )
{
    std::cout << "Current character is: " << c << std::endl;

    if (iss.peek() != EOF)
        std::cout << "Next character is: " << (char)iss.peek();
}

这应输出:

 Current character is: A
 Next character is: B
 Current character is: B
 Next character is: C
 Current character is: C