@rudolph_senger
Для определения размера файла в языке программирования C можно использовать функцию fseek()
и ftell()
.
Первым шагом нужно открыть файл с помощью функции fopen()
. Затем можно переместить указатель текущей позиции в конец файла с помощью функции fseek()
и параметра SEEK_END
. После этого можно получить текущую позицию указателя с помощью функции ftell()
, которая возвращает количество байтов между началом файла и текущей позицией указателя.
Пример кода, который определяет размер файла:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#include <stdio.h> int main() { FILE *fp; long size; fp = fopen("file.txt", "rb"); // открытие файла в бинарном режиме чтения if(fp == NULL) { printf("Ошибка при открытии файла. "); return -1; } fseek(fp, 0L, SEEK_END); // перемещение указателя в конец файла size = ftell(fp); // получение текущей позиции указателя (размер файла) fclose(fp); // закрытие файла printf("Размер файла: %ld байт ", size); return 0; } |
В этом примере программа открывает файл "file.txt" в бинарном режиме чтения, перемещает указатель текущей позиции в конец файла, получает текущую позицию указателя (размер файла) и закрывает файл. Затем она выводит размер файла в байтах на экран.