Kurs programowania w C cz. 83

Nasza ocena:

5
Wyświetleń: 518
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Kurs programowania w C cz. 83 - strona 1

Fragment notatki:

PODSTAWOWA OBSŁUGA PLIKÓW 99 Pliki a strumienie Można zauważyć, że do zapisu do pliku używamy funkcji  fprintf,  która wygląda bardzo podobnie do  printf  — jedyną różnicą jest to, że w fprintf musimy jako pierwszy argument podać identyfikator pliku. Nie jest to przypadek — obie funkcje tak naprawdę robią tak samo. Używana do wczytywania danych z klawiatury funkcja scanf  też ma swój odpowiednik wśród funkcji operujących na plikach — jak nietrudno zgadnąć, nosi ona nazwę  fscanf. W rzeczywistości język C traktuje tak samo klawiaturę i plik — są to źródła da- nych, podobnie jak ekran i plik, do których możne dane kierować. Jest to myślenie typowe dla systemów typu UNIX, jednak dla użytkowników przyzwyczajonych do sys- temu Windows albo języków typu  Pascal  może być to co najmniej dziwne. Nie da się ukryć, że między klawiaturą i plikiem na dysku zachodzą podstawowe różnice i dostęp do nich odbywa się inaczej — jednak funkcje języka C pozwalają nam o tym zapo- mnieć i same zajmują się szczegółami technicznymi. Z punktu widzenia programisty, urządzenia te sprowadzają się do nadanego im identyfikatora. Uogólnione pliki nazywa się w C  strumieniami . Każdy program w momencie uruchomienia “otrzymuje” od razu trzy otwarte stru- mienie: •  stdin  (wejście) •  stdout  (wyjście) •  stderr  (wyjście błędów) (aby z nich korzystać należy dołączyć plik nagłówkowy  stdio.h) Pierwszy z tych plików umożliwia odczytywanie danych wpisywanych przez użyt- kownika, natomiast pozostałe dwa służą do wyprowadzania informacji dla użytkownika oraz powiadamiania o błędach. Warto tutaj zauważyć, że konstrukcja: fprintf (stdout, "Hej, ja działam!") ; jest równoważna konstrukcji printf ("Hej, ja działam!"); Podobnie jest z funkcją scanf(): fscanf (stdin, "%d", &zmienna); działa tak samo jak scanf("%d", &zmienna); Obsługa błędów Jeśli nastąpił błąd, możemy się dowiedzieć o jego przyczynie na podstawie zmiennej errno  zadeklarowanej w  pliku nagłówkowym  errno.h.  Możliwe jest też wydrukowanie komunikatu o błedzie za pomocą funkcji  perror.  Na przykład używając: ... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz