sopen
Функция Открывает разделяемый файл.
Синтаксис #include
#include
#include
#include
int sopen(char *path, int access, int shflag, int mode);
Файл, содержащий io.h прототип
Описание Функция sopen открывает файл, имя которого опреде- лено параметром path, и подготавливает его к пос- ледующим разделяемым операциям чтения и/или запи- си, в зависимости от параметров access, shflag и mode.
sopen это макро, определенное следующим образом:
open(path, (access) | (shflag), mode)
Для функции sopen параметр access конструируется путем логического побитового сложения флагов, пе- речисленных в двух следующих списках. Из первого списка может быть использован только один флаг; остальные флаги могут применяться в любых логи- ческих комбинациях.
Список 1: флаги чтения/записи.
O_RDONLY открытие только для чтения. O_WRONLY открытие только для записи. O_RDWR открытие для чтения и записи.
Список 2: остальные флаги доступа.
O_NDELAY Не используется; для совместимости с системой UNIX. O_APPEND Если флажок установлен, то перед каждой операцией записи, указатель файла бу- дет устанавливаться на конец файла. O_CREAT Если файл существует, этот флажок не имеет никакого значения. Если файл не существует, он будет создан, и биты из аргумента mode будут использованы для установки битов-атрибутов файла, как и в функции chmod. O_TRUNC Если файл существует, его длина усека- ется до 0. Атрибуты файла остаются не- изменными. O_EXCL Используется только вместе с O_CREAT. Если файл уже существует, то происходит возврат по ошибке. O_BINARY Данный флаг может быть установлен для гарантированного открытия файла в двоичном режиме. O_TEXT Данный флаг может быть установлен для гарантированного открытия файла в текс- товом режиме.
Эти константы (O_...) определены в файле fcntl.h.
Если ни O_BINARY, ни O_TEXT не указаны, файл отк- рывается в режиме трансляции, соответственно гло- бальной переменной _fmode.
Если в построении параметра access участвует флаг O_CREAT, вам необходимо указать аргумент mode из следующих символических констант, определенных в файле sys\stat.h. -------------------------------------------------- Значение параметра Возможности доступа mode -------------------------------------------------- S_IWRITE Разрешение на запись. S_IREAD Разрешение на чтение. S_IREAD/S_IWRITE Разрешение на чтение/запись. --------------------------------------------------