概要
#include <unistd.h>
#include <sys/types.h>
int ftruncate(int fd, off_t length);
有人说偏移量类型通常是长整数。
因此,我使用%ld对其进行扫描,如下所示:
off_t size;
scanf("%ld",&size);
ftruncate(fout,size);
但是编译器警告:expected“ int”,但是argumant类型为“ struct FILE *”
我该怎么办?
最佳答案
ftruncate
函数期望它的第一个参数是文件描述符,而显然您传递了struct FILE*
。正确的方法是:
ftruncate(fileno(fout),size);
关于c - 我想使用ftruncate创建具有固定大小的文件,但是如何处理off_t类型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34691421/