Основы программирования в Linux
Шрифт:
У флагов
Флаги прав доступа такие же, как в системном вызове
Для других флагов режима файла включены следующие имена:
Для масок, интерпретирующих флаги
Существует ряд макросов, помогающих определить типы файлов. Они просто сравнивают надлежащим образом установленные флаги режима файла с подходящим флагом, типа устройства. К ним относятся следующие:
Например, для проверки того, что файл не является каталогом и у него есть права на выполнение только для владельца и больше никаких других прав, вы можете воспользоваться следующим тестом;
Системные вызовы
Далее приведена синтаксическая запись для вызовов.
Эти вызовы могут оказаться полезными в случае нескольких процессов, взаимодействующих через именованные каналы. Более глубоко мы рассмотрим системные вызовы
Стандартная библиотека ввода/вывода
Стандартная библиотека ввода/вывода (stdio) и ее заголовочный файл stdio.h предоставляют универсальный интерфейс для системных вызовов ввода/вывода нижнего уровня. Библиотека, теперь часть языка С стандарта ANSI, в отличие от системных вызовов, с которыми вы встречались ранее, включает много сложных функций для форматирования вывода и просмотра ввода. Она также обеспечивает необходимые условия буферизации для устройств.
Во многих случаях эта библиотека используется так же, как низкоуровневые дескрипторы файлов. Вы должны открыть файл для установления пути доступа. Это действие возвращает значение, применяемое как параметр в других функциях библиотеки ввода/вывода. Эквивалент низкоуровневого дескриптора файла называется потоком и реализуется как указатель на структуру
Не путайте эти потоки файлов с потоками ввода/вывода в языке С++ и механизмом STREAMS, описывающим взаимодействие процессов и введенным в системе AT&T UNIX System V Release 3, который не рассматривается в данной книге. Для получения дополнительной информации о средствах STREAMS обратитесь к спецификации X/Open (по адресу http://www.opengroup.org) и руководству по программированию AT&T STREAMS Programming Guide, поставляемому с системой System V.
Три файловых потока открываются автоматически при старте программы. К ним относятся stdin, stdout и stderr. Эти потоки объявлены в файле stdio.h и представляют вывод, ввод и стандартный поток ошибок, которым соответствуют низкоуровневые файловые дескрипторы 0, 1 и 2.
В данном разделе мы рассмотрим следующие функции:
fopen
Библиотечная функция f
Протокол "Наследник"
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Огненный зверь (сборник)
Фантастика:
фэнтези
рейтинг книги
Прокурор
Детективы:
прочие детективы
рейтинг книги
Воронцов. Перезагрузка
1. Воронцов. Перезагрузка
Фантастика:
попаданцы
альтернативная история
фантастика: прочее
рейтинг книги
Над бездной
Любовные романы:
современные любовные романы
рейтинг книги
Кодекс Охотника. Книга XXVI
26. Кодекс Охотника
Фантастика:
попаданцы
рейтинг книги
Россия молодая
Полное издание в одном томе
Проза:
историческая проза
рейтинг книги
Николай Гоголь
Проза:
историческая проза
рейтинг книги
Эпоха Опустошителя. Том III
3. Вечное Ристалище
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Джек Потрошитель
Документальная литература:
публицистика
рейтинг книги
Братва
Братва
Детективы:
криминальные детективы
рейтинг книги
Я не царь. Книга XXIV
24. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
рейтинг книги
Эндимион. Восход Эндимиона
Гиперион
Фантастика:
научная фантастика
космическая фантастика
рейтинг книги
Симфонии
Поэзия:
поэзия
рейтинг книги