C++ C++;结构回归真实,但为什么?

C++ C++;结构回归真实,但为什么?,c++,structure,binary-search-tree,C++,Structure,Binary Search Tree,做一些课程,我需要做一个二叉搜索树。小菜一碟,应该很有趣。 因为C++没有字典的特点,所以我决定用BST来编字典。 我在网上找到了一些代码,让我简单地了解它们是如何组合在一起的,它们都比较简单,但对于C++来说是新的,并且来自C语言环境,有一件事把我弄糊涂了,那就是“C”。我不明白为什么在while循环中“c”返回true,或者为什么更改左侧或右侧的数据会影响这个结果 node* t = new node; node* parent; t->data; t->left = NUL

做一些课程,我需要做一个二叉搜索树。小菜一碟,应该很有趣。 因为C++没有字典的特点,所以我决定用BST来编字典。 我在网上找到了一些代码,让我简单地了解它们是如何组合在一起的,它们都比较简单,但对于C++来说是新的,并且来自C语言环境,有一件事把我弄糊涂了,那就是“C”。我不明白为什么在while循环中“c”返回true,或者为什么更改左侧或右侧的数据会影响这个结果

node* t = new node;
node* parent;

t->data;
t->left  = NULL;
t->right = NULL;
parent   = NULL;

...

    node* c;
    c = root;

    while (c)
    {
        parent = c;

        if(t->data > c->data)
        {
            c = c->right;
        }
        else //else it's assigned left
        {
            c = c->left;
        }
    }

<>在C和C++中,指针为空,则为假,否则为真。这个while循环一直沿着树向下走,直到
c
变成空指针


此外,C++也有字典。查看
std::map
std::unordered\u map

啊,我明白了。非常感谢你。我之前读过关于std::map的文章,但我想我忘记了,但哦,好吧,重新发明轮子没有什么坏处。