有没有C++版本的ungetc?
也就是说,我可以把一个角色放回istream上吗?
发布于 2011-08-03 00:09:28
是。istream::putback与ungetc except if using unget()相同
你不能使用unget()。它会“取消”最后一次读取的字符。你可以使用putback(c)。你可以“放回”一些字符,而不是最后读取的字符。有时,放回上次读取的字符以外的其他字符可能会很有用。
此外,如果底层读缓冲区确实具有缓冲功能,则可以“回放”多个字符。我认为ungetc()被限制为一个字符。
发布于 2011-08-03 00:07:36
您可以使用istream::putback函数将字符放回原处。如果你愿意,你甚至可以添加一个不同的字符。
发布于 2011-08-03 00:07:52
是的,http://www.cplusplus.com/reference/iostream/istream/putback/
https://stackoverflow.com/questions/6915054
复制相似问题