Buonasera, sto cercando di implementare un albero BST in C con relative funzioni di inserimento, ricerca e cancellazione.
1 ) definisco la struttura:
struct Nodo{
int value;
struct Nodo* left_child;
struct Nodo* right_child;
struct Nodo* p;
};
struct Tree{
int cardinality;
struct Nodo* root;
};
2 ) funzione per allocare la struttura
void TreeCreate(struct Tree* tree){
tree = (struct Tree*)malloc(sizeof(struct Tree));
}
3) main
struct Tree tree;
TreeCreate(&tree);
ed ora il mio quesito...
tramite debug del codice mi sono accorto che nella funzione TreeCreate dopo aver allocato la struttura,
tree->cardinality (numero di nodi) è pari a 0 mentre all' uscita cambia e assume valore indefinito ( es : 15774463 ). qualcuno sarebbe così gentile da spiegarmi il perchè ?