【发布时间】:2017-02-01 23:49:47
【问题描述】:
我正在尝试将下面的代码修复为仅读取前几个 N 字节。我也想做同样的事情,但是对于最后的 N 个字节数(我假设这将只涉及在字节数 N 前添加一个“-”)。我不确定使用 fget 是否是正确的方法。
我尝试更改 1000 in
while(fgets(buffer, 1000, fp)
但是我不认为更改该值会占用一定数量的字节,因为我已经读过它只是一个最大值。
char buffer[1001];
int main(int argc, char** argv) {
bzero(buffer, sizeof(buffer));
for(int x=1; x<argc; x++) {
FILE *fp = fopen(argv[x], "r+");
if (fp) {
while(fgets(buffer, 1000, fp)) {
printf("%s", buffer);
}
} else {
printf("could not open file %s\n", argv[x]);
}
}
}
【问题讨论】:
-
我认为这将只涉及在字节数 N 前添加一个“-”这是 可爱(但不正确)。 How do you determine the size of a file in C?
-
我尝试使用 fread 和 fwrite 但它无法编译。我不明白我做错了什么,但我认为在 fread 和 fwrite.while (fread(buffer, 1, number, file)) { fwrite(buffer, 1,号码,文件); printf("%s", 缓冲区); }