Рассмотрим этот код:
while (myfile>>Ciphertext)
{
getline(myfile, Ciphertext);
}
Выражение в while
пытается прочитать первую строку с пробелом из файла в Ciphertext
. Он успешно читает abc
, поэтому он входит в цикл, где он читает строку (до следующей новой строки) в Cipertext
, заменяя все, что там есть. Таким образом, он читает остальную часть первой строки defg hij klmno
. Затем он возвращается и пытается прочитать еще одну строку, разделенную пробелами, но это не удается, поскольку теперь вы находитесь в конце файла. Таким образом, цикл while заканчивается, оставляя defg hij klmno
in Ciphertext