Understanding pointers in C
I'm learning pointers in C and I'm developing a simple game for my class.
I'm confused where it says return a pointer to the new node. Do I need to "return *node"? Why can't I just "return node"?
Also, why is this procedure defined as "NODE *new_node(char *s)" and not "NODE new_node(char *s)" without the asterisk?
// This procedure should create a new NODE and copy
// the contents of string s into the
// question_or_animal field. It should also initialize
// the left and right fields to NULL.
// It should return a pointer to the new node
NODE *new_node(char *s)
new->left = NULL;
new->right = NULL;