write

Функция            Записывает данные в файл.

Синтаксис          #include
                   int write(int handle, void *buf, unsigned len);

Файл, содержащий   io.h
прототип

Описание           write записывает буфер, содержащий данные, в файл
                   или на устройство, соответствующее номеру handle.
                   handle - это логический номер, полученный в опе-
                   рациях creat, open, dup, dup2.

                   Данная функция делает попытку записи len байтов
                   из буфера, адресуемого параметром buf, в файл,
                   соответствующий номеру handle. За исключением си-
                   туации, при которой функция write записывает дан-
                   ные в текстовый файл, количество байтов, записан-
                   ное в файл, будет не больше, чем требуемое коли-
                   чество.

                   Максисмальное число байтов, которое write может
                   записать 65534, т.к. 65535(0xFFFF) тоже самое,
                   что и -1, которая является возвращаемым кодом
                   ошибки для write.

                   В текстовых файлах если write встречает символ
                   перевода строки(LF), она выводит пару CR/LF.

                   Если число действительно записанных байт меньше,
                   чем задано, то должна быть выдана ошибка и воз-
                   можно это говорит о том, что на диске нет места.

                   Для дисков и дисковых файлов, запись всегда осу-
                   ществляется с текущего файлового указателя. Для
                   устройств, байты посылаются непосредственно на
                   устройства.

                   Для файлов, открытых с ключем O_APPEND, файловый
                   указатель устанавливается на EOF, прежде чем бу-
                   дет осуществлена запись данных.

Возвращаемое       write возвращает число записанных байтов. При
значение           записи в текстовый файл генерируемые символы
                   возврата каретки CR не считаются. В случае ошибки
                   write возвращает -1, и устанавливает глобальную
                   переменную errno в:

                     EACCED - Permission denied;
                     EBADR  - Bad file number.

Переносимость      write поддерживается на UNIX-системах.

Смотрите также      creat lseek open read _write