if(!T1)
return;
if(T){
T1->data=T->data;
if(T->left)
{
T1->left=new(node);
CopyBT(T->left,T1->left);
}
else
T1->left=NULL;
if(T->right)
{
T1->right=new(node);
CopyBT(T->right,T1->right);
}
else
T1->right = NULL;
}
else
{
T1->data=0;
T1->left = T1->right = NULL;
}
return;
if(T){
T1->data=T->data;
if(T->left)
{
T1->left=new(node);
CopyBT(T->left,T1->left);
}
else
T1->left=NULL;
if(T->right)
{
T1->right=new(node);
CopyBT(T->right,T1->right);
}
else
T1->right = NULL;
}
else
{
T1->data=0;
T1->left = T1->right = NULL;
}
解决方案 »
- 怎么通过使用CreateDC来实现对指定窗口的截图?
- uint和int的区别
- vc6.0 对话框背景图片问题
- 如果不通过控件绑定变量获取控件的值
- 有的网吧里的操作系统好像是windows的定制版本,是怎么做的?自己开发?微软做的?
- 各位兄台,有事的没事的进来看看啊,100分虽然少,但是是我一片心意啊
- 有谁看过<用VC++实现自绘按钮控制>这片文章,我想实现红底白字怎样做?
- CWebBrowser控件问题
- 如果利用vc把下位机的数据描在坐标系上
- openni_grabber.exe 中的 0x75ea812f 处有未经处理的异常: Microsoft C++ 异常: 内存位置 0x0012f348 处的
- DCOM的配置
- 怎样在odbc连接sqlserver的方式下读区sql服务器的时间
不论这个!
if(T)
{
.......
}
else
T->data=0;
这里有一个很大的错误,但是不知道是不是影响你的程序的原因。
很明显的,
如果T==NULL,那么T->data=0也肯定错误的!
{
if(T==NULL||T1==NULL)return;
//
T1->data=T->data;
T1->left=new(node);
CopyBT(T->left,T1->left);
T1->right=new(node);
CopyBT(T->right,T1->right);
//
}
先写一函数:
void CopyBT(node *T,node *T1)
{
if(T)
{
T1->data=T->data;
T->left=T1->left;
T->right=T1->right;
}
else
T->data=0;
}CopyBT(T->left,T1->left);
CopyBT(T->right,T1->right);
T1->data=T->data;出现错误为:
Unhandled exception in tree.exe:0xC00000005:Access Violation