Я запускаю следующую программу
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main(int argc, char *argv[])
{
ifstream input_file(argv[1]);
vector<string> words;
string line;
while(getline(input_file, line))
{
cout << line << endl;
words.push_back(line);
}
input_file.close();
cout << "First and last word: " << words[0] << " " << words.back() << endl;
return 0;
}
, используя следующий текстовый файл в качестве входных данных
permission
copper
operation
cop
rationale
rest
, и получаю следующий вывод в терминале
permission
copper
operation
cop
rationale
rest
rest and last word: permission
Почему последнее слово words.back()
печатается в начале строки при стирании части текста?