#include #include /* Naopako kopiranje datoteke na stdout. To NE RADI dobro (na Windowsima), jer je stdout tekstualna datoteka. */ int main(void) { char *f_name = "frev_out.in"; FILE *fp; long file_pos, pomak = 0L; /* Ne radi dobro ni za "r", ni za "rb", jer je stdout tekstualna datoteka! */ if ((fp = fopen(f_name, "rb")) == NULL) { fprintf(stderr, "Ne mogu citati iz: %s!\n", f_name); exit(1); } /* Datoteku ispisujemo naopako. */ do { /* Pomak unazad od kraja. */ if (fseek(fp, --pomak, SEEK_END)) break; /* Zapamti poziciju i ucitaj znak. Bas tim redom! */ file_pos = ftell(fp); putchar(fgetc(fp)); /* Sad je pozicija narasla za 1L. */ } while (file_pos != 0L); fclose(fp); return 0; }