Witam
Mam za zadanie napisać napisać listę (Glowna), która będzie przechowywać w każdej swojej komórce liczbę całkowitą będącą identyfikatorem (int ID), oraz dwie listy jednokierunkowe (start, stop), które z kolei będą przechowywać pary punktów (x,y). Zrobilem to tak:
struct Punkty {
int x;
int y;
struct Punkty *next;
};
typedef struct Punkty *ListWewn;
struct Glowna {
int ID;
ListWewn start;
ListWewn stop;
struct Glowna *next;
};
typedef struct Glowna *List;
Czy jest to poprawne?
Pierwszy problem pojawia się w funkcji, w której chcę dodać nowy identyfikator i stworzyć puste struktury start, stop:
void add_id(List *x, int id)
{
List nowy, pomoc;
nowy=malloc(sizeof(struct Glowna));
nowy->value=id;
ListWewn (nowy->start);
nowy->start=malloc(sizeof(struct Punkty));
nowy->start=NULL;
ListWewn (nowy->stop);
nowy->stop=malloc(sizeof(struct Punkty));
nowy->stop=NULL;
nowy->next=NULL;
if(*x==NULL)
*x=nowy;
else
{
pomoc=*x;
while(pomoc->next!=NULL)
pomoc=pomoc->next;
pomoc->next=nowy;
}
}
Jednak w liniach ListWewn (nowy->start);
, ListWewn (nowy->stop);
DevC++ zgłasza:
syntax error before '->' token
dlaczego?