读书人

一个二叉树实现中关于c和c++的有关问题

发布时间: 2012-08-30 09:55:54 作者: rapoo

一个二叉树实现中关于c和c++的问题
二叉树创建一棵树的实现中,输入用cin输入没有终点,用scan则没有这种现象。
代码如下:
#include "BiTree.h"
#include <iostream>

using namespace std;

Status CreateBiTree(BiTree &T){
TElemType ch;
//cin>>&ch;
scanf("%c",&ch);
if(ch == ' ')
T = NULL;
else{
if(!(T=(BiTNode*)malloc(sizeof(BiTNode))))
exit(OVERFLOW);
T->data = ch;
CreateBiTree(T->lchild);
CreateBiTree(T->rchild);
}
return OK;
}
求高手指教,谢谢!

[解决办法]
cin输入操作符>>后不要接取地址符号&(此题中)
[解决办法]
可能输入流缓冲区含有了残留的回车什么的,输入的时候忽略
cin>>ch;
cin.ignore(255,'\n');

读书人网 >C++

热点推荐