void Add( IntPtr & head, ...
head = new IntPtr;
Кажется, C ++, в C вы не можете использовать такой синтаксис. Вы можете передать указатель вместо использования ссылки (не забудьте выделить память).
head -> left = NULL;
head -> data = data;
head -> right = NULL;
В C нельзя использовать пробел между переменной и ->
. Вы должны устранить пробел, как показано ниже:
head->left = NULL;
head->data = data;
head->right = NULL;