Powiedzmy, że mam taką strukturę:
struct Node {
int value;
struct Node *next;
};
I teraz, jeśli zdefiniuję sobie typ List w ten sposób:
typedef struct Node List;
To nie mam problemu z przekazuwaniem wskaźnika na listę do funkcji drukujących / sortujących itd.
Jednak jeśli użyję:
typedef struct Node *List;
Zaczynają się problemy, np.
request for member ‘next’ in something not a structure or union
Czy może ktoś napisać jakiś prosty przykład, jak powinno się w takich sytuacjach konstruować funkcje, odczytywać i edytować pola struktury? Najlepiej od samej deklaracji listy, poprzez przekazanie do funkcji aż po przykład funkcji. Może być nawet proste drukowanie listy, po prostu potrzebuję jakiegoś przykładu.