私は、次の構造体があります。このツリーでセグメンテーションフォールトとポインタがNULLでない
typedef struct treeNode *tree;
typedef struct treeNode {
int key;
tree left, right;
} treeNode;
:
問題: mytree->左>左を - >左は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