У меня возникли проблемы с тем, чтобы моя программа считывала данные из файла. Проблема в том, что файл в настоящее время пуст. Каждый раз, когда программа запускается, один массив books[] будет заполняться и записываться в файл позже в коде. Хотя я уверен, что это будет работать, когда все 10 структур находятся в файле, на данный момент происходит сбой, так как файл пуст и он пытается прочитать 10 структур.
Есть ли способ прочитать неизвестное количество структур (до 10) из файла?
struct stock
{
char name[31];
int stock;
};
int main (void)
{
stock books[10];
FILE *fptr;
fptr = fopen("stock.dat", "rb");
fread(books, sizeof(struct stock), 10, fptr);
fclose (fptr);
}