Witam, mam problem z odczytem z pliku danych do struktury.
Typ bazowy:
struct adres
{
char miejsce_zamieszkania[LICZBA_ZNAKOW];
int numer_domu;
};
struct telefon
{
int telefon_prywatny;
};
struct email
{
char email_prywatny[LICZBA_ZNAKOW];
};
struct baza_kontaktow
{
int id;
char imie[LICZBA_ZNAKOW];
char nazwisko[LICZBA_ZNAKOW];
struct adres dodaj_adres;
struct telefon dodaj_telefon;
struct email dodaj_email;
struct baza_kontaktow *next;
};
void wczytaj_kontakt_z_pliku(struct baza_kontaktow *poczatek)
{
struct baza_kontaktow *nowy_kontakt=NULL;
nowy_kontakt=(struct baza_kontaktow*)malloc(sizeof(struct baza_kontaktow));
nowy_kontakt->next=NULL;
FILE *wczytaj_dane;
wczytaj_dane = fopen("baza_kontaktow.txt", "r");
if (wczytaj_dane == NULL)
{
printf("\t\t\t [BAZA KONTAKTOW JEST PUSTA]");
}
else
{
while(!feof(wczytaj_dane))
{
fscanf(wczytaj_dane," %d %s %s %s %s %d %s %s %d %d %s %s",
&nowy_kontakt->id, nowy_kontakt->imie, nowy_kontakt->nazwisko,
nowy_kontakt->dodaj_adres.miejsce_zamieszkania,
nowy_kontakt->dodaj_adres.ulica, &nowy_kontakt->dodaj_adres.numer_domu,
nowy_kontakt->dodaj_adres.kod_pocztowy, nowy_kontakt->dodaj_adres.poczta,
&nowy_kontakt->dodaj_telefon.telefon_prywatny, &nowy_kontakt->dodaj_telefon.telefon_sluzbowy,
nowy_kontakt->dodaj_email.email_prywatny, nowy_kontakt->dodaj_email.email_sluzbowy);
nowy_kontakt->next = nowy_kontakt;
}
printf("\t\t\t [BAZA KONTAKTOW ZOSTALA WCZYTANA]");
}
fclose(wczytaj_dane);
}
```c
Zapis do pliku udało mi się wykonać, zapisuje się w pliku jedna dana pod druga id, imię itd.
Czy mógłby mi ktoś pomoc napisać takie wczytywanie z pliku?
PS danych w strukturach, ktore wkleilem jest mniej i moze sie nie zgadzać z tym kodem wyczytywania, ale to nie ma znaczenia.