Основы программирования в 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
Собрание сочинений. Том 4
Проза:
классическая проза
рейтинг книги
Дикарка Жасмин
6. Сага о Скай О`Малли
Любовные романы:
исторические любовные романы
рейтинг книги
Алексей Михайлович
4. Романовы. Династия в романах
Проза:
историческая проза
рейтинг книги
Книга 16. Каббалистический форум (старое издание)
Научно-образовательная:
прочая научная литература
религиоведение
рейтинг книги
Возлюби болезнь свою
Научно-образовательная:
психология
рейтинг книги
Беседы
Документальная литература:
биографии и мемуары
публицистика
рейтинг книги
Том 12. Из 'Автобиографии'. Из записных книжек 1865-1905. Избранные письма
Проза:
классическая проза
рейтинг книги
Паладин из прошлого тысячелетия
1. Соприкосновение миров
Фантастика:
боевая фантастика
попаданцы
рейтинг книги
Бессонница
17. Темная Башня
Фантастика:
ужасы и мистика
рейтинг книги
UNIX: взаимодействие процессов
Компьютеры и Интернет:
программирование
рейтинг книги
Наномашины, "Шива"! Том 7
7. Первый среди карапузов
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
рейтинг книги
Неучтенный элемент. Том 3
3. Антимаг. Вне системы
Фантастика:
фэнтези
рейтинг книги
Травник
1. Травник
Фантастика:
фэнтези
рейтинг книги
Война Цветов
10. Мастера меча и магии
Фантастика:
фэнтези
рейтинг книги