Cześć.
Tym razem wrzucam program który pobiera zawartość pliku tekstowego i wyświetla go w odwrotnej kolejności. Wykorzystane tablice dynamiczne.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | #include <stdio.h> #include <stdlib.h> int main() { FILE* plik = fopen( "C:\\plik.txt", "r" ); int il; //ilosc znakow if(plik == NULL)// jesli sie nie otworzyl to wyswietli dd printf("dd"); fseek( plik, 0, SEEK_END ); // przesuwamy wskaznik na koniec pliku il=ftell(plik);//odczytujemy miejsce wskaznika w pliku, a ze jest na koncu, wiec wartosc to wielkosci pliku char* wsk;//wsk wsk=(char*) malloc(il*sizeof(char));//tablica dynamiczna o wielkosci takiej jaka ma plik int i=0; rewind(plik);//przesunelismhy wks do pliku do konca, wiec wracamy na poczatek while( !feof( plik ) ) //poki nie skonczy sie plik { *(wsk+i)=fgetc( plik);//do utowrzonej tablcy wrzucamy po jednym znaku wszystkie znaki i++; } fclose( plik );// zamykamy pliczek printf("%s\n\n\n", wsk);//wywietalmy to z pliku // to ponizej to wyswietlenie od tylu, bo chcialem zoabczyc czy dobrze all wszystko for(i=(il-1);i>=0;i--) { printf("%c", *(wsk+i)); } return 0; } |
Mateusz Mazurek