Функция Записывает данные в файл.
Синтаксис #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-системах.
Смотрите также creatlseekopenread_write