Richard MacCutchan
Это определяет структуру, которая содержит узел (что бы это ни было).
struct node root; // root is a node struct so may contain many variables.
Это определяет указатель на структуру узла.
struct node *root; // root is a pointer to a node struct
В связанном списке каждый элемент должен быть связан со следующим (и/или предыдущим) элементом. Это можно сделать с помощью указателя на элемент. Затем вы можете пройти по списку, взяв каждый указатель по очереди. Например, что-то вроде следующего кода:
struct node* next = head; // head points to the first item in the list
while (next != NULL)
{
next = next->root; // get the address of the next node in the list
// if it is null (i.e. the end of the list) the while loop will terminate.
}