取消引用指向不完整类型的指针(struct node)

时间:2017-01-14 22:38:29

标签: c pointers linked-list dereference avl-tree

我正在使用C编写一个简单的AVL树实现。我在代码的各个部分遇到了问题。有时我会收到此错误,有时解除引用效果很好。

以下是我的 struct node 的外观:

struct Node
{
    int data;
    struct Node *left;
    struct Node *right;
    int height;
};

这是我得到解除引用错误的地方(完全在 if(data<(p-> data))

struct node* search(struct node* p, int data)
{
    if (!p)
        return NULL;
    if (data < (p->data))
        return search(p -> left, data);
    else if ( data > p -> data )
        return search(p -> right, data);
    else
        return p;
}

同样在这里:

struct Node remove_min(struct Node *x)
{
 if (x->left == NULL)
     return x->right;
 x->left = deleteMin(x->left);
 return x;
}

任何帮助将不胜感激。谢谢

1 个答案:

答案 0 :(得分:2)

#!/bin/bash sum=0 while read n; do sum=$(($sum + $n)) done echo $sum 更改为struct node