比较指针与整数

标签 c

我正在制作一个二叉搜索树程序,我想遍历到要选择其左子或右子节点来插入元素的节点。而在 while 条件下,我收到指针与整数比较的警告。帮帮我

 while(temp1->data != NULL)
   {
       temp2=temp1;
       if(value<=temp1->data)
       {
           temp1=temp1->lchild;
       }
       else
       {
           temp1=temp1->rchild;
       }
   }

最佳答案

您的 while 循环测试是错误的。它应该测试指向节点的空指针,如下所示:

while(temp1 != NULL)  // <-- this line was wrong
{
    temp2=temp1;
    if(value<=temp1->data)
    {
        temp1=temp1->lchild;
    }
    else
    {
        temp1=temp1->rchild;
    }
}

关于比较指针与整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39416880/

相关文章:

c - 我需要在没有节标题的共享对象上链接 C 程序

c - 为什么输出反转且第一个字符丢失?

c - C宏中两个相邻的井号是什么意思?

创建头文件并在 C 中测试它

c - 可以在 C 中为特定结构编写函数吗?

c - 一般指针问题

c++ - 对于完整的 c 和 c++ 编译器,我应该在 MinGW 设置中选择哪些选项

c - 为什么当我们在文件中写入\n 时它会转换为\r\n 组合?

c - Haskell 中的 OpenCL 仅处理输入数组的某些元素

c - 如何使用文本文件为生命游戏制作 C 程序