intro(3) Library Functions Manual intro(3)

intro - wprowadzenie do funkcji bibliotecznych

Dział 3 podręcznika opisuje wszystkie funkcje biblioteczne z wyłączeniem funkcji bibliotecznych (opakowań wywołań systemowych) opisanych w dziale 2, implementujących wywołania systemowe.

Wiele z funkcji opisanych w tym dziale jest częścią standardowej biblioteki C (libc). Niektóre są częścią innych bibliotek (np. biblioteki matematycznej libm lub biblioteki czasu rzeczywistego, librt) - wówczas strona podręcznika wskazuje opcje linkera potrzebne do skonsolidowania z wymaganą biblioteką (np. -lm i -lrt, odpowiednio, do wspomnianych bibliotek).

W niektórych przypadkach, programista musi zdefiniować makro sprawdzania cech aby pozyskać deklarację funkcji z pliku nagłówkowego opisanego w rozdziale SKŁADNIA strony podręcznika systemowego (gdy jest to wymagane, takie makra muszą być zdefiniowane przez dołączeniem jakichkolwiek plików nagłówkowych). W takich sytuacjach, wymagane makro jest opisane w odpowiednim podręczniku systemowym. Więcej informacji o makrach sprawdzania cech można znaleźć w podręczniku feature_test_macros(7).

Dział 3 niniejszego podręcznika jest zorganizowany w poddziały, które oddają złożoną strukturę standardowej biblioteki C i jej wielu implementacji:

3const
3head
3type

Ta trudna historia często daje zły przykład do naśladowania, gdy chodzi o projektowanie, implementację i prezentację.

Biblioteka języka C powinna być zaprojektowana w taki sposób, aby każdy plik nagłówkowy stanowił interfejs do spójnego modułu oprogramowania. Zapewnia on niewielką liczbę deklaracji funkcji i ujawnia jedynie typy danych i stałe, które są wymagane do korzystania z tych funkcji. Razem stanowi to API, czyli application program interfaceinterfejs programistyczny aplikacji. Typy i stałe, które mają być dzielone pomiędzy różnymi API, powinny być umieszczane w plikach nagłówkowych, które nie deklarują funkcji. Taka organizacja pozwala na zwięzłe dokumentowanie modułu biblioteki C, z jednym plikiem nagłówkowym na jedną stronę podręcznika systemowego. Takie podejście poprawia czytelność i dostępność dokumentacji bibliotecznej, a zatem również użyteczność oprogramowania.

Poszczególne zwroty i skróty używane do określenia wariantów Uniksa i standardów, do których wywołania w tym dziale się stosują. Patrz standards(7).

Nazwiska autorów i warunki kopiowania znajdują się w nagłówku strony man. Mogą one różnić się dla poszczególnych stron.

intro(2), errno(3), capabilities(7), credentials(7), environ(7), feature_test_macros(7), libc(7), math_error(7), path_resolution(7), pthreads(7), signal(7), standards(7), system_data_types(7)

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Adam Byrtek <alpha@irc.pl>, Michał Kułach <michal.kulach@gmail.com> i Robert Luberda <robert@debian.org>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

2 maja 2024 r. Linux man-pages 6.8