2011-08-02 72 views

回答

4

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

你不能用unget()來說謊。它「解開」最後閱讀的字符。你可以用putback(c)來說謊。你可以「回收」最後閱讀的字符以外的其他字符 。有時候放回 以外的字符,最後閱讀的字符會很有用。另外,如果底層讀緩衝區確實具有緩衝功能,則可以「回收」多個字符。我認爲 ungetc()限於一個字符。

+0

'istream :: unget'不是'ungetc'。你可以用'ungetc'說謊。 –

+2

@Martinho:這只是'putback' – Puppy

1

您可以使用istream::putback函數返回一個字符。如果你願意,你甚至可以放置不同的角色。

+0

哈哈,你贏了15秒 –