Когда нужно использовать файлы

Что такое файл

В последнее время студенты все реже задают этот вопрос, однако на него все-таки стоит дать короткий ответ.

Файл - это самостоятельная последовательность символов, записанная в постоянную память компьютера.

В английском языке слово "file" имеет вполне понятный смысл: "вереница", что очень хорошо отражает внутреннюю структуру любого файла. Файл - это именно вереница символов, причем связанных в определенной последовательности: символы файла не могут по своему желанию перепрыгивать с одного места на другое.

"Самостоятельность" файлов заключается в том, что они не зависят от работы какой-либо программы. И даже если выключить компьютер, файлы будут продолжать свое существование на винчестере или на дискете.

Файлы могут хранить в себе все, что поддается кодированию:

  • исходные тексты программ или входные данные (тесты);
  • машинные коды выполняемых программ (игры, вирусы, обучающие и сервисные программы, др.);
  • информацию о текущем состоянии какого-либо процесса;
  • различные документы, в том числе и Интернет-страницы;
  • картинки (рисунки, фотографии, видео);
  • музыку;
  • и т.д. и т.п.

Выбор между консолью и файлами вам придется делать каждый раз, когда вы станете писать очередную программу.

Между тем ответ на вопрос, вынесенный в заголовок этого пункта, прост.

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

Например, если вашей программе необходимо получить два или три числа (пять - уже многовато) или строку длиной символов десять, вы вполне можете задавать такие данные с клавиатуры вручную. Если же вам (а еще вероятнее - не вам, а некоему усредненному и потому посредственному оператору) придется вводить, скажем, массив чисел 10х10, то вероятность ошибки при ручном вводе возрастает многократно. Значит, возможность этой ошибки нужно исключить: записать данные в файл, который легко отредактировать в случае необходимости. Кроме того, однажды созданный файл можно использовать многократно (может быть, с незначительными изменениями).