2
我有以下結構:段故障,並指向不存在的結構是不爲空
typedef struct treeNode *tree;
typedef struct treeNode {
int key;
tree left, right;
} treeNode;
與此樹:
問題: mytree->左>左 - > left不是NULL。但爲什麼?!我如何檢查是否到達分支的末端?
tree mytree = (tree)malloc(sizeof(treeNode));
mytree->key = 17;
mytree->left = (tree)malloc(sizeof(treeNode));
mytree->left->key = 5;
mytree->left->left = (tree)malloc(sizeof(treeNode));
mytree->left->right = (tree)malloc(sizeof(treeNode));
mytree->left->left->key = 20;
mytree->left->right->key = 2;
mytree->right = (tree)malloc(sizeof(treeNode));
mytree->right->key = 1;
mytree->right->left = (tree)malloc(sizeof(treeNode));
mytree->right->right = (tree)malloc(sizeof(treeNode));
mytree->right->left->key = 6;
mytree->right->right->key = 3;
你把它設置爲NULL嗎?沒有?那爲什麼呢? –
初始化每個節點時,您是否將左側和右側子設置爲「NULL」? – Haris
沒有看到您用來創建樹的代碼,我們無法幫助您。你可以發佈你使用的代碼嗎? – templatetypedef