3 Important functions

The most important functions for recursive list operations are List_isempty and List_getrest.

List_isempty indicates whether a list (pointed to by the parameter) is empty or not. This usually is the base case. In other words, when the recursive function is given an empty list, it does not call itself any further.

List_getrest returns the rest of a list, which is (a pointer to) a list as well. This is usually used to specify one of the parameters in the recursive call.