Я пытаюсь перечитать буфер cin
после использования cin.getline()
5 раз
Это невозможно с cin
, вводом с терминала соответственно.
Что вы можете сделать, так это самостоятельно отслеживать вводимые данные, используя std::vector<std::string>
, сохраняя эти строки на первом месте.Вот примерный набросок:
#include <iostream>
#include <string>
#include <vector>
using std::cin;
using std::string;
int main()
{
std::vector<string> lines;
string line;
for(int i = 0; i < 5; i++) {
std::getline(cin,line);
lines.push_back(line);
}
auto linepos = lines.begin();
while(linepos != lines.end()) {
// cin.getline(str, PATH_MAX); instead do:
// process *linepos
++linepos;
}
}