Книга: Программирование для Linux. Профессиональный подход
Листинг Б.1. (createfile.c) Создание файла
Листинг Б.1. (createfile.c) Создание файла
#include <fcntl.h>
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
int main(int argc, char* argv[]) {
/* Путевое имя нового файла */
char* path = argv[1];
/* Права доступа к файлу. */
mode_t mode =
S_IRUSR | S_IWUSR| S_IRGRP | S_IWGRP | S_IROTH;
/* Создание файла. */
int fd = open(path, O_WRONLY | O_EXCL | O_CREAT, mode);
if (fd == -1) {
/* Произошла ошибка. Выводим сообщение и завершаем работу. */
perror("open");
return 1;
}
return 0;
}
Результаты работы программы будут такими:
% ./create-file testfile
% ls -l testfile
-rw-rw-r-- 1 samuel users 0 Feb 1 22:47 testfile
% ./create-file testfile
open: File exists
Обратите внимание на то, что длина файла равна нулю, так как программа не записывала в него никакие данные.
- Резюме: отображение файлов
- Листинг 10.1. (simpleid.c) Отображение идентификаторов пользователя и группы
- Создание файлов с блокировкой
- Эффективная работа с временными файлами сортировки
- Создание свободно позиционируемых элементов
- Единое имя файла параметров InterBase
- 12. Лекция: Создание приложений с графическим интерфейсом пользователя.
- Параметры конфигурационного файла InterBase
- Создание объектов Collection
- 7.4.2.4. Создание своего первого LiveCD
- 4.2. Создание трехмерной модели и построение горизонтальной проекции детали
- 7.4.2. Создание собственного LiveCD