我在使用构建二叉树的递归函数时遇到问题。
tree_link tree_from_array_preorder(Item arr[], int N)
{
int pos =0;
int * pos_ptr=&pos;
//struct tree_struct treeOfLife;
if((N<1)|| (arr[0]==0))
return NULL;
tree_link root=new_tree_link(arr[pos]);
root->left=tree_from_array_preorder_aux(arr, pos_ptr, N);
root->right=tree_from_array_preorder_aux(arr, pos_ptr, N);
return root;
}
tree_link tree_from_array_preorder_aux(Item arr[], int *pos, int N)
{
if(arr[pos]==0)
return NULL;
tree_link root= new_tree_link(arr[pos]);
(pos)+=1;
root->left=tree_from_array_preorder_aux(arr, pos, N);
root->right=tree_from_array_preorder_aux(arr, pos, N);
return root;
}
我不断收到有关aux函数和我调用它之间冲突类型的错误。我很确定我的指针声明在某个地方搞砸了,而且我对指针的引用也是如此。任何帮助都会很感激,谢谢你的时间。
答案 0 :(得分:0)
我忘了在我用于此程序的添加的.h头文件中声明原型。 ...... - JustaRedShirt