#include <unistd.h>
#include <sys/types.h>
int truncate(const char *path, off_t length);
int ftruncate(int fd, off_t length);
作用:用于拓展或截斷文件。將參數path 指定的文件大小改為參數length 指定的大小。如果原來的文件大小比參數length大,則超過的部分會被刪去。與lseek函數拓展文件的區別是,該函數在拓展文件后不再需要向文件進行額外的寫操作。
0 成功? -1失敗
//代碼
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>int main(int argc, char* argv[])
{if(argc < 3){printf("a.out filename 111\n");exit(1);}long int len = strtol(argv[2], NULL, 10); //需將字符串轉化為10進制數int aa = truncate(argv[1], len);if(aa == -1){perror("truncate");exit(1);}return 0;
}
#include <stdio.h>??? // C庫函數??? rename不是系統函數
int rename(const char *oldpath, const char *newpath);
作用:對文件進行重命名
0 成功? -1 失敗