是否有ungetc的C ++版本?

时间:2011-08-02 16:06:40

标签: c++ io iostream undo ungetc

是否有ungetc的C ++版本?

也就是说,我可以将一个角色放回到istream吗?

3 个答案:

答案 0 :(得分:4)

是。 istream::putback与ungetc except if using unget()相同:

  

你不能和unget()说谎。它“取消”最后读取的字符。您   可以撒谎(c)。你可以“推翻”除了之外的一些角色   最后读的字符。有时会把一个角色放回去   最后读取的字符可能很有用。

     

此外,如果底层读缓冲区确实有缓冲   能力,你可以“回放”多个角色。我认为   ungetc()仅限于一个字符。

答案 1 :(得分:2)

您可以使用istream::putback功能放回一个角色。如果你愿意,你甚至可以放一个不同的角色。

答案 2 :(得分:0)