int filesize(FILE * handle)
{
int filesize;
int old_pointer = ftell(handle);
fseek(handle, 0, SEEK_END);
filesize = ftell(handle);
fseek(handle, old_pointer, SEEK_SET);
return filesize;
}
Это хороший способ для функции вернуть размер файла?Функция, которая возвращает размер файла?
Лучшей альтернативой POSIX является 'fseeko' и' ftello'. Использование семейства 'stat' не будет правильно получать размер для блочных устройств и других необычных файлов. –
И вы не можете искать на терминале или трубе ... есть все ограничения. –
Если файл не имеет размера, задание размера не является значимой операцией. Мой подход дает правильный ответ, когда существует ответ. –