Definícia zásobníka v programovaní
vgajic/Getty Images
Zásobník je štruktúra poľa alebo zoznamu volaní funkcií a parametrov používaných v modernom počítačovom programovaní a architektúre CPU. Podobne ako pri hromade tanierov v bufetovej reštaurácii alebo bufete sa prvky v stohu pridávajú alebo odoberajú z hornej časti stohu v poradí posledný dnu, prvý von alebo LIFO.
Proces pridávania údajov do zásobníka sa označuje ako push, zatiaľ čo získavanie údajov zo zásobníka sa nazýva pop. K tomu dochádza v hornej časti zásobníka. Ukazovateľ zásobníka označuje rozsah zásobníka, ktorý sa prispôsobuje, keď sú prvky zatlačené alebo vysunuté do zásobníka.
Pri volaní funkcie sa do zásobníka vloží adresa ďalšej inštrukcie.
Keď sa funkcia ukončí, adresa sa zobrazí stoh a vykonávanie pokračuje na tejto adrese.
Akcie na zásobníku
Existujú aj ďalšie akcie, ktoré možno vykonať na zásobníku v závislosti od programovacieho prostredia.
- Peek: Umožňuje kontrolu najvyššieho prvku na stohu bez toho, aby sa prvok skutočne odstránil.
- Výmena: Tiež označovaná ako výmena, pozície dvoch horných prvkov zásobníka sa vymenia, pričom prvý prvok sa stane druhým a druhý najvyšším.
- Duplikát: Najvrchnejší prvok sa vyberie zo zásobníka a potom sa dvakrát zatlačí späť na zásobník, čím sa vytvorí duplikát pôvodného prvku.
- Otočiť: Tiež označované ako rolka, určuje počet prvkov v stohu, ktoré sa otáčajú v ich poradí. Napríklad otočením štyroch vrchných prvkov stohu by sa najvrchnejší prvok posunul do štvrtej polohy, zatiaľ čo ďalšie tri prvky sa posunuli o jednu pozíciu nahor.
Zásobník je tiež známy ako ' Last In First Out (LIFO)“.
Príklady: V C a C++ , premenných deklarované lokálne (alebo automatické) sú uložené v zásobníku.