Понятие файла и потока ввода-вывода данных в компьютере
Для организации ввода-вывода и хранения информации используется файловая система. Файл – это именованный объект, который может хранить данные, программу, результаты ее работы или любую другую информацию на внешних носителях информации. В языке Си нет встроенных операторов ввода-вывода, а есть функции ввода-вывода данных. При этом ввод-вывод данных рассматривается как поток байтов, поэтому термины файл и поток рассматриваются как равноправные.
Функции потокового (файлового) ввода-вывода включены в стандарт ANSI языка Си, и поэтому их часто называют функциями стандартного ввода-вывода. Их прототипы находятся в заголовочном файле, подключаемом к программе командой препроцессора
#include<stdio.h>.
С помощью файла stdio.hоткрывается доступ к библиотеке функций стандартного ввода-вывода, которая содержит объектные модули этих функций, необходимые на стадии загрузки программы.
Для каждого файла, открытого в программе как поток ввода-вывода, создается внутри структурная переменная по шаблону FILE, определенному в stdio.h, где содержится информация о файле (флаги состояния файла, указатель на буфер, размер буфера и др.). Доступ к файлу осуществляется с помощью указателя, который описывается следующим образом:
FILE *fp;