C++ C+中的树实现+;:无法将节点转换为int*询问问题
我目前正在做作业。下面是我编写的构建二叉树的程序。我得到的错误是,“无法将赋值中的'node'转换为'int*'。你能帮帮我吗**C++ C+中的树实现+;:无法将节点转换为int*询问问题,c++,data-structures,binary-tree,binary-search-tree,nodes,C++,Data Structures,Binary Tree,Binary Search Tree,Nodes,我目前正在做作业。下面是我编写的构建二叉树的程序。我得到的错误是,“无法将赋值中的'node'转换为'int*'。你能帮帮我吗** #include<iostream> #include<conio.h> struct node { char data; int *left,*right; }; int main() { node *T; //ROOT of tree node *p,*q; //address of first nod
#include<iostream>
#include<conio.h>
struct node
{
char data;
int *left,*right;
};
int main()
{
node *T; //ROOT of tree
node *p,*q; //address of first node in T
T=new node;
T->left=NULL;
T->right=NULL;
T->data='A';
p=new node;
p->left=NULL;
p->right=NULL;
p->data='B';
T->left=&p;
p=new node;
p->left=NULL;
p->right=NULL;
p->data='C';
T->right=&p;
q=new node;
q->left=NULL;
q->right=NULL;
q->data='D';
p->left=&q;
return 0;
}```
#包括
#包括
结构节点
{
字符数据;
int*左,*右;
};
int main()
{
node*T;//树的根
node*p,*q;//T中第一个节点的地址
T=新节点;
T->left=NULL;
T->right=NULL;
T->data='A';
p=新节点;
p->left=NULL;
p->right=NULL;
p->data='B';
T->left=&p;
p=新节点;
p->left=NULL;
p->right=NULL;
p->data='C';
T->right=&p;
q=新节点;
q->left=NULL;
q->right=NULL;
q->data='D';
p->left=&q;
返回0;
}```
将结构定义更改为
struct node
{
char data;
node *left,*right; // <- node * here
};
struct节点
{
字符数据;
node*left,*right;//按照@TarekD的建议更改您的结构,问题是您试图将node*强制转换为int*
T->left=&p;
T->right=&p;
p->left=&q;