_chsize_s
變更檔案的大小。 這是一個版本的 _chsize 中所述的安全性增強功能與安全性功能,則在 CRT 中。
errno_t _chsize_s(
int fd,
__int64 size
);
參數
fd
指的已開啟檔案的檔案描述項。size
新的檔案,以位元組為單位的長度。
傳回值
_chsize_s 如果已成功地變更檔案的大小,則傳回值為 0。 非零的傳回值表示發生錯誤: 傳回的值是EACCES 如果指定的檔案已鎖定,無法存取, EBADF 如果指定的檔案是唯讀的或是描述元不正確, ENOSPC 如果沒有可用空間就會留在裝置上,或EINVAL 如果大小小於零。 errno 設定為相同的值。
如需有關這些及其他的傳回碼的詳細資訊,請參閱 _doserrno、 errno、 _sys_errlist,以及 _sys_nerr。
備註
_chsize_s 函數會延伸到或相關聯的檔案會將其截斷fd到所指定的長度size。 檔案必須在允許寫入模式開啟。 如果該檔案將會擴充,則附加 null 字元 ('\ 0')。 如果檔案被截斷中縮短檔案的結尾, 為原始的檔案長度的所有資料都都會遺失。
_chsize_s 接受檔案的大小,以 64 位元整數,並可處理檔案大小超過 4GB。 _chsize 會限制為 32 位元檔案大小。
這個函式會驗證它的參數。 如果fd不是有效的檔案描述項] 或 [大小是小於零,叫用無效的參數處理常式時,所述參數驗證。
需求
常式 |
所需的標頭 |
選擇性標頭 |
---|---|---|
_chsize_s |
<io.h> |
<errno.h> |
如需相容性資訊,請參閱相容性在簡介中。