[C] struktura i pliki

0

Witam. Mam tak zdefiniowaną strukturę :

struct TPlyta
{
  char tytul[256];
  char wykonawca[256];
  char album[256];
  int  rok;
};

struct TElem
{
  struct TPlyta dane;
  struct TElem *prev;
  struct TElem *next;
}*g=NULL,*o=NULL,*p=NULL;

W ten sposób zapisuje i wczytuje dane z pliku :

void save(struct TElem **g)
{
 FILE *out;
 out=fopen("dane.dat","wb");
 fwrite(&((**g).dane),sizeof(struct TPlyta),1,out);
 fclose(out);
 return;
};

void load(struct TElem **g)
{
  FILE *in;
  in=fopen("dane.dat","rb");
  fread(&((**g).dane),sizeof(struct TPlyta),1,in);
  fclose(in);
  return;
};

Problem w tym, że nie wiem zabardzo w jaki sposób wykryć ile struktur znajduje się w pliku (u mnie jest to ograniczone do jednej :) ) - pytanie dotyczy funkcji load.

Z góry dziękuję za info.

Pozdrowienia

0

Odczytuj dane w petli az do osiagniecia konca pliku, ewentualnie na poczatku zapisz naglowek, w ktorym bedzie zapisana ilosc struktur.

1 użytkowników online, w tym zalogowanych: 0, gości: 1