📅  最后修改于: 2023-12-03 15:29:53.495000             🧑  作者: Mango
在C++中,basic_istream
是标准输入流的基类,其成员函数unget()
可以将一个字符放回流中。在本文中,我们将介绍basic_istream::unget()
的用法和示例。
basic_istream::unget()
的语法basic_istream::unget()
的语法如下:
basic_istream& unget();
int_type unget(char_type ch);
其中,第一个版本将流中的最后一个字符放回流中,并返回指向当前流的引用。第二个版本将指定字符放回流中,并返回其Unicode值。
basic_istream::unget()
的示例下面是一个简单的示例,演示了basic_istream::unget()
的用法:
#include <iostream>
#include <sstream>
using namespace std;
int main() {
istringstream iss("Hello, world!");
char c;
while (iss.get(c)) {
cout << c;
if (c == ',') {
iss.unget();
}
}
return 0;
}
上述代码将输出:
Hello, world!
在此示例中,我们使用istringstream
对象创建了一个输入流,并使用get()
方法逐字符读取流中的内容。当读取到逗号时,我们使用unget()
方法将其放回流中,从而使程序可以重新读取该字符。