ďťż

Ładny brzuch

Witam.

Mam pytanko odnośnie wczytywania znaków w języku C. Zawartość pliku (przekierowanie wejścia w Linuxie) wczytuję za pomocą pętli while i funkcji getchar(). Jednak nie wiem jak wczytać zawartość tego pliczku kilka razy podczas jednego uruchomienia programu. Program wczytuje plik raz, a potem "wejście jest już puste". Czy jest sposób, aby wczytać go kilka razy korzystając z getchar()?

Jeśli nie to może jakiś inny pomysł bez użycia tej funkcji?

Pozdrawiam.



moze podaj kod, bo wydaje mi sie, ze nie chodzi o getchar()

main () { char c; c=getchar(); while (c!=EOF) { putchar(c); c=getchar(); } c=getchar(); while (c!=EOF) { putchar(c); c=getchar(); } }

Chodzi o to, żeby za drugim razem program wypisał to samo co za pierwszym. Przekierowany na wejście jest jeden plik i trzeba wydrukować jego zawartość dwukrotnie. Chciałbym wiedzieć czy w ogóle jest to możliwe nie zmieniając drastycznie kodu?

Możesz przewinąć plik na początek za pomocą funkcji rewind(f); gdzie f to wskaźnik do pliku. A jak to nie zadziała, to spróbuj fseek(f,0, SEEK_SET)

@down: proszę bardzo ;)



Wielkie dzięki. ;*

Wpisałem rewind(stdin); i działa! :D

Jeszcze raz dziękuję.

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •