I'm trying to add a new root element to my linked list. I already know the correct answer but I dont understand why there's a double pointer to the current root element. Here's the correct code:
void elementAsRoot(Element **oldRoot, Element *newRoot){
newRoot -> next = *oldRoot;
*oldRoot = newRoot;
}