Функции ввода-вывода более низкого уровня позволяют пользоваться средствами ввода – вывода непосредственно операционной системы. При этом не выполняются буферизация и форматирование данных. Обычно функции низкоуровневого ввода – вывода рекомендуются использовать для разработки собственных систем ввода – вывода, поскольку эти функции близки к средствам ввода – вывода операционной системы.
При низкоуровневом открытии файла с ним связывается не указатель файла (потока), а дескриптор ( handle)файла. Дескриптор – это целое число, характеризующее размещение информации об открытии файла во внутренних таблицах операционной системы. Дескриптор файла используется при последующих операциях с файлом.
В библиотеку языка Си включены следующие функции ввода – вывода нижнего уровня:
- open () / close() – открыть / закрыть файл;
- creat () – создать файл;
- read () / write () – читать / писать данные;
- sopen () – открыть файл в режиме разделения, т. е. для одновременного доступа со стороны нескольких процессов (работающих программ);
- eof () – проверить достижения конца файла;
- lseek () – изменить текущую позицию в файле;
- tell () – получить значение текущей позиции в файле.