Это код для связанного списка на языке программирования C.
#include <stdio.h> /* For printf */
#include <stdlib.h> /* For malloc */
typedef struct node {
int data;
struct node *next; /* Pointer to next element in list */
} LLIST;
LLIST *list_add(LLIST **p, int i);
void list_remove(LLIST **p);
LLIST **list_search(LLIST **n, int i);
void list_print(LLIST *n);
Код не завершен, но я думаю, что этого достаточно для моего вопроса. Здесь в конце struct node используется "LLIST", а также используется в качестве возвращаемого типа в прототипировании функции list_add
. Что происходит?