odczyt z pliku

reksiak
Użytkownik
Użytkownik
Posty: 41
Rejestracja: 15 sty 2005, o 23:57
Płeć: Mężczyzna
Lokalizacja: Kielce
Podziękował: 6 razy

odczyt z pliku

Post autor: reksiak »

Jak odczytac (w C) z pliku tekstowego znak po znaku tak aby pojedyncze znaki znalazly sie kazdy w osobnym elemencie listy?
arigo
Użytkownik
Użytkownik
Posty: 852
Rejestracja: 23 paź 2004, o 10:17
Płeć: Mężczyzna
Lokalizacja: Lublin
Pomógł: 28 razy

odczyt z pliku

Post autor: arigo »

o jaka liste Ci chodzi?

odczytujesz getchar'em az nie bedzie EOF i za kazdym razem zapisujesz ten znak aktualny gdzie chcesz
reksiak
Użytkownik
Użytkownik
Posty: 41
Rejestracja: 15 sty 2005, o 23:57
Płeć: Mężczyzna
Lokalizacja: Kielce
Podziękował: 6 razy

odczyt z pliku

Post autor: reksiak »

Mam taki problem z odczytem z pliku, że dwa razy dodaje mi do listy ostatni element pliku:

Kod: Zaznacz cały

void pobierz_z_pliku(struct lista *newlist,char *nazwapl) //pobiera el. listy
 {                                                      //z podanego pliku
  char c;
  FILE *stream;
  stream=fopen(nazwapl,"r");
  while(!feof(stream))
   {fscanf(stream,"%c",&c);
    dolacz_element(newlist,c);}
  fclose(stream);
  return;
 }

Kod: Zaznacz cały

void dolacz_element(struct lista *newlist,char n) //dolacza element na koncu
 {                                                //listy
  struct element *ostatni;
  struct element *newel;
  newel=malloc(sizeof(struct element));
  newel->nazwa=n;
  if(newlist->tile==NULL)
   {newlist->head=newel;
    newlist->tile=newel;
    newel->next=NULL;
    newel->prev=NULL;
   }
  else
   {ostatni=newlist->tile;
    newel->prev=ostatni;
    newel->next=NULL;
    ostatni->next=newel;
    newlist->tile=newel;
   }
  return;
  }
Nie wiem co jest przyczyną pomóżcie,plizzzzzzz.
ODPOWIEDZ