Premetto chè sono alle prime armi con il linguagio c e non mi è ben chiaro l'uso dei puntatori.
Ho una struttura Albero del seguente tipo:
codice:
typedef struct node{
int key;
struct node * left;
struct node * right;
} *Node;
e voglio costruire un albero tramie la funzione
codice:
Node costruisci(int key,Node sx, Node dx){
Node res;
res=(Node)malloc(sizeof(Node));
res->key=key;
res->left=sx;
res->right=dx;
return res;
}
e successivamente compiere una visita ordiata tramite
codice:
void stampaAlbertoOrdine(Node tree){
if(tree==NULL)return;
stampaAlbertoOrdine(tree->left);
printf("%d\n",tree->key);
stampaAlbertoOrdine(tree->right);
return;
}
ma il programma crasha a causa dell'errato uso dei puntatori dove sbaglio?
(Se avete qualche buona guida di c linkatemela grazie!)