Функция открывает файл для чтения или записи.
Синтаксис #include
int _open(const char *filename, int oflags);
Файл, содержащий io.h
прототип
Описание Функция _open открывает файл, имя которого опреде-
лено параметром filename, и подготавливает его
для для последующих операций чтения и/или записи,
определяемых параметром oflags. Файл открывается
в режиме, определяемом _fmode.
Для функции _open параметр oflags в DOS 2.x огра-
ничивается тремя значениями: O_RDONLY, O_WRONLY
O_RDWR. В DOS 3.x вводятся дополнительные значе-
ния:
O_NOINHERIT - Включается, если файл не может быть
передан дочерней программе.
O_DENYALL - Позволяет доступ к файлу только по
текущему номеру handle.
O_DENYWRITE - Позволяет любому другому открытию
файла только чтение.
O_DENYREAD - Позволяет любому другому открытию
файла только запись.
O_DENYNONE - Разрешает разделенное открытие фай-
ла.
Эти символические константы (O_...) определены в
файле fcntl.h.
В единственный вызов функции open под версией DOS
3.x может быть включено только одно из значений
O_DENYxxx. Эти атрибуты разделения доступа к фай-
лу даны в дополнение к операциям блокировки.
Максимальное число одновременно открытых файлов
задается, как параметр, при конфигурировании сис-
темы.
Возвращаемое При успешном завершении _open возвращает целое
значение неотрицательное число handle - логический номер
открытого файла. Указатель файла (указатель теку-
щей позиции) устанавливается на начало файла. При
ошибке _open возвращает значение -1, и переменная
errno получает одно из следующих значений:
ENOENT - Маршрут или имя файла не найдены;
EMFILE - Слишком много открытых файлов;
EACCES - Доступ запрещен;
EINVACC - Неверный код доступа.
Переносимость Функция _open уникальна для DOS.
Смотрите также openreadsopen