C++ Например, у меня есть файл с именем Bjarne.txt
и в нем есть целые числа:Misunderstood использование cin.unget() при работе с файлами I/O
16 2 3 4
Я сделал программу, чтобы прочитать целые числа, доступные внутри файла и выводить их мне в окно консоли, однако, я пытаюсь использовать cin.unget()
и что получить понимание того, что он делает на самом деле, вот исходный код:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
ifstream ifs("Bjarne.txt");
int a;
for(int i = 0;i<4;++i){
ifs>>a;
cout<<endl<<a;
if(i==0){
ifs.unget();
}
}
и выход это:
16 6 2 3
Почему такой выход? (это должно быть 16 2 3 4
), это происходит только тогда, когда я помещаю ifs.unget() в программу, поэтому мои вопросы таковы, какова цель cin.unget() при использовании файлов ввода-вывода и почему это число 6 (как часть 16) получать вывод?
Заранее благодарим за любую помощь.
Почему вы пытаетесь использовать 'cin.unget()', если у вас нет понимания того, что он делает? И почему вы не прочитали его документацию, чтобы узнать? –
Итак, вы получили свой ответ? –