#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
Go to the source code of this file.
Classes | |
struct | prvek |
Macros | |
#define | is_empty(z) (!(z)) |
#define | dup(z) (z)=pridej((z),vrchol((z))) |
Typedefs | |
typedef struct prvek | prvek |
Functions | |
prvek * | pridej (prvek *zasobnik, int data) |
int | vrchol (prvek *zasobnik) |
prvek * | odeber (prvek *zasobnik) |
int | for_each (prvek *zasobnik, int(*cbk)(int i, int data)) |
int | main (void) |
Dynamická_práce_s_pamětí
Katedra informatiky, Univerzity Palackého v_Olomouci
Dynamický zásobník ******
Téma: Dynamická práce s pamětí Procvičované učivo: dynamická alokace paměti, ukazatele, funkce, strukturované datové typy
Napište v jazyku C funkce pro práci s dynamickým zásobníkem. Připomínáme, že je o datovou strukturu, jejíž základem ke prvek, který v sobě kromě dat (při řešení této úlohy postačí jedna položka typu int) obsahuje také ukazatel na prvek, který byl do zásobníku vložen bezprostředně před ním.
Se zásobníkem je možné provádět tyto operace: přidání prvku - funkce prvek pridej(prvek *zasobnik, int data), přečtení dat z vrchoolu zásobníku - funkce int vrchol (prvek zasobnik) a odebrání prvku z vrcholu zásobníku - funkce prvek odeber (prvek zasobnik).
Příklad použití:
int main(){ prvek* z=NULL; int i;
for (i=1; i<11; i++) z = pridej(z, i);
while (z!=NULL){ printf("%i\n", vrchol(z)); z=odeber(z); } return 0; }
Povolené knihovny: stdio.h, stdlib.h Alternativy úlohy: dynamická fronta, dynamický seznam honza: dynamicky zasobnik je jednosmerny list
Definition in file dynamicky-zasobnik.c.
prida novy prvek na vrsek, celo seznamu.
Definition at line 56 of file dynamicky-zasobnik.c.