Я использую ubuntu 14.04 и пытаюсь читать двоичный файл, но fseek никогда не возвращает -1 из-за размера файла.почему fseek никогда не возвращается -1
Почему это произошло?
#include <stdio.h>
int main() {
const char *fn = "myfile";
FILE * fid;
fid = fopen(fn, "r");
int flag;
while(1) {
flag = fseek(fid, sizeof(float), SEEK_CUR);
printf("flag: %d\n",flag);
if(flag)
break;
}
}
Почему 'SizeOf float' важно в вашем примере? Во всяком случае, правильно позиционировать курсор чтения * за * конец файла. – usr2564301
Не важно, как я могу узнать, что я превосхожу файл с помощью fseek .. – neouyghur
У вас нет, поскольку это не то, что проверяет 'fseek'. – usr2564301