当我使用 cin.get 函数从 cin 获取输入时,它会自动更新输入文件中的读取位置。我应该怎么做才能将读取的位置返回到文件的开头,以便我可以第二次输入?
例如,我有以下文件 input.txt:
“向你的新世界问好”
和以下获取 input.txt 文件的 get 循环:
while(cin.get(charTemp)){
numberOfChars++;
}
我怎样才能接受两次输入?
最佳答案
您将无法重新读取标准输入流。如果您确实需要阅读内容两次,则必须将其存储起来,例如:
std::stringstream input;
input << std::cin.rdbuf();
input.seekg(0);
// use input and seek back to the beginning if needed
关于c++ - 从 std::cin 读取输入两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17958571/