_chsize_s
Изменяет размер файла. Эта функция представляет собой версию улучшений _chsize
безопасности, как описано в функциях безопасности в CRT.
Синтаксис
errno_t _chsize_s(
int fd,
__int64 size
);
Параметры
fd
Дескриптор файла, ссылающийся на открытый файл.
size
Новая длина файла в байтах.
Возвращаемое значение
_chsize_s
возвращает значение 0, если размер файла успешно изменен. Ненулевое возвращаемое значение указывает на ошибку: возвращается значение EACCES
, если доступ к указанному файлу заблокирован, EBADF
, если указанный файл доступен только для чтения или используется недопустимый дескриптор, ENOSPC
, если места на устройстве недостаточно, или EINVAL
, если размер файла меньше нуля. errno
принимает такое же значение.
Дополнительные сведения об этих и других кодах возврата см. в разделе errno
, _doserrno
и _sys_nerr
_sys_errlist
.
Замечания
Функция _chsize_s
расширяет или усекает файл, связанный с fd
, до длины, указанной size
. Файл должен быть открыт в режиме, позволяющем выполнять запись. Если файл доступен для расширения, к нему добавляются нули ('\0'). Если файл усекается, все данные в конце сокращенного файла усекаются до длины исходного файла.
_chsize_s
принимает размер файла, выраженный 64-разрядным целым числом, и, таким образом, позволяет обрабатывать размеры файлов больше 4 ГБ. _chsize
ограничивается 32-разрядными размерами файлов.
Эта функция проверяет свои параметры. Если fd
недопустимый дескриптор файла или размер меньше нуля, вызывается обработчик недопустимых параметров, как описано в разделе проверки параметров.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
Маршрут | Обязательный заголовок | Необязательный заголовок |
---|---|---|
_chsize_s |
<io.h> | <errno.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
См. также
Обработка файлов
_chsize
_close
_creat
, _wcreat
_open
, _wopen