Lekce 17 - Knihovny v jazyce C a C++
V minulé lekci, Kompilace v jazyce C a C++ pokračování, jsme se podívali na poslední část kompilace - linkování.
Knihovny jsou nedílnou součástí programování. Obsahuji sadu funkcí a struktur, které spolu úzce souvisí. V článku o kompilaci jsme si řekli, že linker spojí soubory a přepočítá offsety jednotlivých volání. Pravou úlohou linkeru je ale připojení naší aplikace ke knihovnám. Narazí-li linker na použití knihovny, má v podstatě jen dvě možnosti. Buď může zkopírovat kód z knihovny do naší aplikace a nebo zařídit, aby potřebné funkce byly dostupné během běhu aplikace.
Rozdíl mezi statickou a dynamickou knihovnou
Statická knihovna je výsledek prvního přístupu. Kompiler zkopíruje zdrojové kódy z knihovny a umístí je mezi kódy naší aplikace. Statické knihovny mají zpravidla zkratku .a (pro Linux) nebo .lib (pro Windows). Dynamické knihovny se nepřidávají k našemu zdrojovému souboru, ale připojují se k aplikaci až za běhu. To vede na několik problémů, o kterých si řekneme později. Chceme-li použít dynamickou knihovnu, musíme
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
Řekneme si, jak vygenerovat statickou a dynamickou knihovnu, jak je použít, a jaký je mezi nimi rozdíl.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.