У меня есть открытый поток входных файлов.Он может успешно открыть другой файл (текстовый файл).И, внеся изменения в код, приведенный ниже, я смогу прочитать и вывести другой текстовый файл (все символы ASCII, только буквы).Тем не менее, я играл с функцией ниже.Это приводит к тому, что читается одна строка, тогда как фактически есть три строки.Я хочу знать , почему .Размер массива не является проблемой, то есть увеличение его размера, похоже, ничего не исправит.
void DispFile(fstream& iFile)
{
auto char fileChar[256];
while (inFile.get(fileChar,256))
{
cout << fileChar;
}
}
Вот код, который РАБОТАЕТ:
void DispFile(fstream& iFile)
{
auto char fileChar[256];
while (inFile.getline(fileChar,256))
{
cout << fileChar;
cout << endl;
}
}
ИЛИ
void DispFile(fstream& iFile)
{
char file;
while (inFile.get(file)
{
cout << file;
}
}
Так почему использование inFile.get (массив, измерение) приводит только кодна строка читается, а другие работают как талисман (так сказать).