C/Biblioteka standardowa: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Derbeth (dyskusja | edycje)
m int.
{{r}}
Linia 1:
== Czym jest biblioteka? ==
Bibliotekę w języku C stanowi zbiór skompilowanych wcześniej funkcji, który można łączyć z programem. Biblioteki tworzy się, aby udostępnić zbiór pewnych "wyspecjalizowanych" funkcji do dyspozycji innych programów. Tworzenie bibliotek jest o tyle istotne, że takie podejście znacznie ułatwia tworzenie nowych programów. Łatwiej jest utworzyć program w oparciu o istniejące biblioteki, niż pisać program wraz ze wszystkimi potrzebnymi funkcjami<ref>Początkujący programista zapewne nie byłby w stanie napisać nawet funkcji {{r|printf.</ref>}}.
 
== Po co nam biblioteka standardowa? ==
Linia 6:
 
=== Jak skonstruowana jest biblioteka standardowa? ===
Zapytacie zapewne, jak biblioteka standardowa realizuje te funkcje, skoro sam język C tego nie potrafi. Odpowiedź jest prosta - biblioteka standardowa nie jest napisana w samym języku C. Ponieważ C jest językiem tłumaczonym do kodu maszynowego, to w praktyce nie ma żadnych przeszkód, żeby np. połączyć go z językiem niskiego poziomu, jakim jest np. [[Asembler|asembler]]. Dlatego biblioteka C z jednej strony udostępnia gotowe funkcje w języku C, a z drugiej za pomocą niskopoziomowych mechanizmów<ref>Takich jak np. wywoływanie przerwań programowych.</ref>{{r|low-level}} komunikuje się z systemem operacyjnym, który wykonuje odpowiednie czynności.
 
== Gdzie są funkcje z biblioteki standardowej? ==
Linia 34:
Programy w języku C++ mogą dokładnie w ten sam sposób korzystać z biblioteki standardowej, ale zalecane jest, by robić to raczej w trochę odmienny sposób, właściwy dla C++. Szczegóły w [[C++/Przestrzenie nazw#Korzystanie z biblioteki standardowej C|podręczniku C++]].
 
<noinclude>{{Przypisy}}|przypisy=
<ref name="printf">Początkujący programista zapewne nie byłby w stanie napisać nawet funkcji printf.</ref>
<ref name="low-level">Takich jak np. wywoływanie przerwań programowych.</ref>}}
{{Nawigacja|C|
[[../Preprocesor/]]|