Witam
Zamieszczam kod mojego programu.
#include <stdio.h>
#include <stdlib.h>
struct kolejka
{
int data;
struct kolejka *next;
};
struct wsk
{
struct kolejka *top;
struct kolejka *tail;
}fifo;
void add(struct wsk *fifo, int x)
{
struct kolejka *nowy = (struct kolejka*)malloc(sizeof(struct kolejka));
if(fifo->top==NULL)
{
nowy->data=x;
fifo->top=nowy;
fifo->tail=nowy;
}
else
{
nowy->data=x;
nowy->next=NULL;
fifo->tail->next=nowy;
}
}
void del(struct wsk *fifo)
{
if(fifo->top==NULL)
printf("kolejka jest pusta");
else
{
struct kolejka *point = fifo->top;
printf("%d", point->data);
fifo->top=point->next;
free(point);
}
}
int main()
{
add(&fifo, 2);
del(&fifo);
return 0;
}
Dlaczego argumentem do funkcji musi być adres na strukturę? W innym przypadku program nie działa.
Z góry dziękuje za pomoc!