【发布时间】:2015-02-08 09:50:14
【问题描述】:
我正在尝试编写二叉树。首先我检查根是否为空,如果是,我将数据分配给根。但是代码给出了分段错误。错误出现在 cout 语句中,这表明问题出在内存分配上。
我无法弄清楚出了什么问题。谁能解释并建议我如何更正下面的代码?
#include<iostream>
using namespace std;
struct TreeNode {
int data;
struct TreeNode* left;
struct TreeNode* right;
};
void insert(TreeNode *root, int data){
TreeNode *newNode = new TreeNode;
newNode->data = data;
newNode->left = NULL;
newNode->right = NULL;
if(root==NULL){
root = newNode;
return;
}
}
int main(){
TreeNode *root=NULL;
insert(root,10);
cout << root->data << endl;
}
【问题讨论】:
标签: c++ tree segmentation-fault binary-tree