PRI, laboratorium 8


Zakres materiału: Obsługa plików (zapis/odczyt; binarnie/tekstowo). (5 pkt)


Zadanie 1. Wprowadzenie do obsługi plików.

  1. Utworzyć nowy projekt i do głównego pliku projektu skopiować zawartość pliku źródłowego zad1.c.
  2. Zapoznać się ze sposobem otwierania plikow w różnych trybach (linia: 41, 76, 134, 176).
  3. Zapoznać się z odczytywaniem i zapisywaniem danych do pliku tekstowego za pomocą różnych funkcji bibliotecznych.
  4. Zapoznać się z odczytywaniem i zapisywaniem danych do pliku binarnego za pomocą różnych funkcji bibliotecznych.
  5. Zapoznać się z działaniem funkcji ftell(), fseek(), rewind().
  6. Jaki znak pobierany jest z pliku w linii 85? Dlaczego?
  7. W jaki sposób przekierować funkcję fprintf() na terminal? (linia 78).
  8. Sprawdzić, jaka jest różnica w działaniu poleceń w liniach 155 i 156 (odkomentować i sprawdzić).
  9. Jaki skutek spowoduje zamiana kolejności wykonania funkcji z linii 192 i 193.
  10. Wyjaśnić zawartość plików tworzonych przez program.

Zadanie 2. Zapisanie macierzy do pliku.

Zapisać do pliku tabelę dwuwymiarową o dowolnych rozmiarach w następującej postaci: w pierwszym rzędzie rozmiar macierzy - ilości wierszy i kolumn w postaci dwóch liczb 'n m', a potem zawartość całej macierzy wiersz po wierszu rozdzielona tabulatorami.

Zadanie 3. Wczytanie macierzy z pliku.

Macierz z 'zad2' wczytać z pliku w drugim programie do tabeli dwuwymiarowej (najlepiej tabelę dynamicznie alokować i pod koniec programu zwolnić zajętą pamięć).