Tresc zadania: Przygotuj funkcje push(stos, element), pop(stos, element), które odpowiednio pozwalają na umieszczenie na stosie stos i zdjęcie z niego elementu element w postaci liczby całkowitej, oraz funkcje empty(stos), print(stos), które pozwalają na uzyskanie informacji, czy stos jest pusty oraz wyświetlenie na standardowym wyjściu elementów znajdujących się na nim. Do tego dodaj funkcję inicjuj(stos), która w poprawny sposób zainicjuje pusty stos.
Szczerze nie mam juz zbytnio pomyslu jak odwolac sie do zmiennej ze struktury w mainie oraz dlaczego w funkcji pop nie wyszukuje mi nast_elem, pytaniem jest rowniez czy te funkcje z tresci zadania maja miec 2 argumenty czy moge to zrobic na sposob jaki to zrobilem.
Oto kod:
Nie wiem czemu nie pokazuje ,,gwiazdki" dlatego dopisze tam gdzie powinna byc
#include <stdio.h>
#include <stdlib.h>
typedef struct stos {
unsigned int inf;
struct stos* nast_elem; //gwiazda pomiedzy stos a nast_elem
} stos;
stos* top = NULL; //gwiazdka top
void push(int x)
{
stos* element = malloc(sizeof(int)); //gwiazdka pomiedzy stos a element
element->inf = x;
element->nast_elem;
top = element;
}
void pop()
{
stos* element; //gwiazdka pomiedzy stos a element
nast_elem = top;
top->nast_elem;
free(element);
}
void empty()
{
top = NULL;
printf("Stos jest pusty");
}
int main()
{
printf("Podaj liczbe jaka chcesz dodac na stos");
scanf("%d", &x);
return 0;
}