Można też wyświetlać kod zakończenia procesu w znaczku zachęty (prompt). Przykładowo:
PSl-'$? >' (dlabash)
set prompt~"%? > " (dla tesh)
5. Podaj różnice w działaniu funkcji do generowania komunikatów o błędach: perror i fprintf. perror generuje dodatkowy komunikat o biedzie a fprintf nie ?
Komunikaty o błędach powinny być wysyłane na standardowe wyjście błędów stderr za pomocą funkcji fprintf albo funkcji perror. Funkcja perror automatycznie genenije komunikat opisujący błąd, który wystąpił. Błąd jest rozpoznawany na podstawie zawartości zmiennej errno, która będzie omówiona w dalszej części tekstu. Jako argument fimkcji perror można podać dodatkowy tekst, który ma być wyświetlony. Wówczas na ekranie pojawia się nasz tekst, arak : oraz automatycznie wygenerowany komunikat Ponieważ funkcja perror tworzy gotowy komunikat o błędzie, jako dodatkowy tekst podaje się zwykle nazwę programu. Jest to wygodne zwłaszcza w sytuacji, kiedy pracuje równolegle wiele procesów, które wyrzucają komunikaty' o błędach na tą samą konsolę można się zorientować, od którego procesu pochodzi komunikat.
6. Do czego służy zmienna errno?
W przypadku wystąpienia błędu większość fiinkcji bibliotecznych UNDCa wpisuje kod błędu do zmiennej globalnej errno. Kod błędu jest wartością typu int. Każda predefiniowana funkcja w C ma wyspecyfikowane kody błędów' odpowiadające wystąpieniu różnego rodzaju błędów'. W manuału do poszczególnych fiinkcji można znaleźć pełny opis możliwych błędów i związanych z nimi kodów. Kody błędu są podane w postaci stałych symbolicznych. Powiązanie poszczególnych stałych symbolicarydi z wartościami można znaleźć albo w man -s2 intro albowpliku /usr/include/ays/errno. h
7. .lak sprawdzić czy wywołana funkcja biblioteczna wykonała się poprawnie?
Sprawdzamy jaką wartość zwróciła funkcja Jak sprawdzić ? have no idea
Funkcje w języku C mogą zwracać wartości różnych typów (char *, int, void itp). Dla funkcji bibliotecznych UNDCa często stosuje się pewne reguły umowne:
-w przypadku funkcji zwracających wartości typu char * zwracany jest wskaźnik do miejsca w pamięci
gdzie przechowywany jest znak (lub ciąg znaków') będący wynikiem wykonania fiinkcji. W przypadku błędu zwracany jest wskaźnik NULL.
- funkcje zwracające wartości typu int często zwracają: wartość -1 w przypadku błędu
wraitości różne od -1 w przypadku poprawnego wykonania.
8. Jakie zmienne przechowują argumenty wywołania programu?
Pobranie argumentów, z jakimi został uruchomiony proces jest możliwa, jeśli funkcja mam została zadeklarowana z dwoma argumentami. Pierwszy (zwykle nazywrany arge - argument coimter) będzie przechowywać liczbę argumentów wywołania procesu, dnigi (zwykle nazywrany argv - argument values) będzie zawierać tablicę argumentów wywołania procesu Poniżej przedstawiono dwa sposoby deklaracji tych zmiennych.
(łinclude <stdio.h> main(int arge, char *argv[j)
(
/♦program*/
)
main(int arge, char **argv|
{
/♦program*/
)