CodeNet / Языки программирования / C / C++ / Linux/Unix / Справочник С/C++ для UNIX - Список функций
CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник С/C++ для UNIX - Список функций
CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник С/C++ для UNIX - Список функций
access
ACCESS #include <io.h> требуется только для объявления функции int access(pathname, mode); char *pathname; path-имя файла или директория int mode; разрешенный доступ Описание. Для файлов функция access определяет, существует или нет определенный файл, может ли он быть доступен в заданном режиме mode. Возможные значения mode и их обозначения в вызовах access приведены ниже. ЗНАЧЕНИЕ СМЫСЛ ЗНАЧЕНИЯ 06 Проверка на доступ по чтению и записи 04 Проверка на доступ по чтения 02 Проверка на доступ по записи 00 Проверка только на существование В MS DOS все существующие файлы имеют доступ по чтению, по- этому режимы 00 и 04 вырабатывают один и тот же результат. Анало- гично, режимы 06 и 02 являются эквивалентными, поскольку в MS DOS доступ по записи предполагает доступ по чтению. Для директориев access определяет, существуют или нет за- данные директории; под управлением MS DOS все директории имеют доступ по чтению и записи. Возвращаемое значение. Функция access возвращает значение 0, если файл имеет за- данный режим mode. Возвращаемое значение -1 свидетельствует о том, что названный файл не существует или недоступен в заданном mode, и errno устанавливается в одно из следующих значений: ЗНАЧЕНИЕ СМЫСЛ ЗНАЧЕНИЯ EACCES Доступ запрещен; установленный статус для файла не допускает заданного до- ступа ENOENT Файл или path-имя не найдено См.также chmod, fstat, open, stat. Пример: #include <io.h> #include <fcntl.h> int fh; . . . /* проверка доступа по записи */ if ((access("data",2))==-1 { perror("data file not writable"); exit(1); } else fh=open("data", O_WRONLY);