Использование seekg () при получении ввода от перенаправленного стандартного ввода

Поэтому я пытаюсь прочитать строку символов дважды, используя cin.get (). Ввод перенаправляется как & quot; программа & lt; вход & Quot ;. Так что допустимо использовать seekg ().

Как говорит титул, я думал, что смогу использовать seekg (), чтобы сохранить начальную позицию строки, поэтому я мог вернуться, чтобы снова использовать начальную позицию той же строки.

Вот моя попытка:

char c;
while (cin.get(c))
{
  //do stuff 
}

cin.seekg(0, ios::beg);

while (cin.get(c))
{
  //do stuff with the string a second time
}

Второй цикл while ничего не делает, поэтому я, очевидно, неправильно использую seekg. Может ли кто-нибудь сказать мне, что я делаю неправильно?

Спасибо за любую помощь!

Ответы на вопрос(3)

Ваш ответ на вопрос