将指针分配给结构C时出现分段错误

时间:2019-11-21 20:51:09

标签: c tree segmentation-fault

我的代码在父节点下方通过指针传递给函数的树形结构中创建了两个新节点。将父节点分配为新节点的父节点可以正常工作,但是该程序在尝试将新节点分配为父节点的左右子节点时抛出seg错误

//Create new nodes
node* new1 = (node*)malloc(sizeof(node));
new1->parent = par;

node* new2 = (node*)malloc(sizeof(node));
new2->parent = par;

par->left = new1;
par->right = new2;

这里是参考结构

typedef struct nd {   
  int data;                               
  struct nd* parent;
  struct nd* left;
  struct nd* right;
}node;

1 个答案:

答案 0 :(得分:0)

已解决:我没有考虑根尚未分配的情况。 (即,传递的指针为NULL)