Letní akce! Lákají tě IT školení C#, Javy a PHP v Brně? Přihlas se a napiš nám do zpráv kód "BRNO 500" pro slevu 500 Kč na libovolný brněnský kurz. Lze kombinovat se slevami uvedenými u školení i použít pro více kurzů. Akce končí 28.7.

Lekce 5 - Dynamická pole (vektory) v jazyce C

C a C++ Céčko Dynamická práce s pamětí Dynamická pole (vektory) v jazyce C

V minulé lekci, Dynamické textové řetězce a struktury v jazyce C, jsme se věnovali dynamickým řetězcům a strukturám. Až doposud byla paměť, která nám byla přidělena, nějak omezená. Ať jsme si paměť alokovali dynamicky za běhu aplikace nebo ji za nás jazyk C alokoval staticky, vždy jsme narazili na její limit. Museli jsme si tedy např. hlídat, aby počet uložených čísel nepřesáhl velikost pole. V následujících 2 tutoriálech se konečně dozvíme jak ukládat neomezené množství prvků do paměti, čímž dovršíme své znalosti potřebné k tomu, abychom v Céčku vytvořili opravdu reálně použitelnou aplikaci.

Dynamické pole (Vektor)

Již víme, že prvky pole se v paměti nacházejí bezprostředně za sebou. Také víme, že velikost pole je omezena. Jakmile pole vytvoříme, musíme uvést jak velký prostor (jak velkou řádku jedniček a nul) pro něj má operační systém v paměti vyhradit. Budeme-li programovat např. telefonní seznam, dá se velmi špatně odhadnout kolik čísel v něm bude náš uživatel mít. Bude to 10 nebo 1000? Mohli bychom vytvořit pole telefonních čísel o velikosti 1000. Uživatel poté bude využívat jen jeho část a je to lepší řešení, než když velikost pole podceníme a uživateli aplikace sdělí, že nemá kam ukládat (v tom lepším případě) nebo paměť rovnou přeteče. Jak to ale udělat správně?


 

...konec náhledu článku...

Prémiový článek

Prémiový článek

Na itnetwork.cz se nachází největší a nejucelenější česká databáze s výukovými články, jejímž cílem je umožnit kvalitní vzdělání v oblasti IT úplně každému. Měsíčně zobrazíme k milionu článků a sklidíme desítky děkovných emailů, kde nám sdělujete, že jsme vám pomohli k lepšímu zaměstnání nebo vzdělání.

Ačkoli se snažíme držet většinu obsahu úplně zadarmo, udržovat síť v provozu a aktuální stojí obrovské úsilí. Proto je nějaký obsah, jako cvičení nebo odbornějšíčlánky, přístupný pouze za body. Nebojte, nestojí to skoro nic :)

Popis článku

Požadovaný článek má následující obsah:

V tutoriálu naprogramujeme datovou strukturu vektor, dynamické pole, jehož kapacita se při zaplnění zdvojnásobí. Zabírá rozumně místa a není nijak omezené.
Pro přístup k článku potřebuješ 10 bodů
Na svém účtu máš aktuálně 0 bodů
10 bodů získáš za přidání svého článku na síť nebo za 25 Kč

Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Body 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íť.

Dobít body můžeš okamžitě např.:

Kartou SMS Převodem
Kartou SMS Převodem

 

Článek pro vás napsal David Čápka
Avatar
Autor pracuje jako softwarový architekt a pedagog na projektu ITnetwork.cz (a jeho zahraničních verzích). Velmi si váží svobody podnikání v naší zemi a věří, že když se člověk neštítí práce, tak dokáže úplně cokoli.
Unicorn College Autor sítě se informační technologie naučil na Unicorn College - prestižní soukromé vysoké škole IT a ekonomie.
Aktivity (4)