Я работал над алгоритмом двоичного дерева предзаказа.Но я встречаюсь с ошибкой сегментации: ошибка 11.Коды показаны следующим образом.
Я хочу знать, почему происходит эта ошибка.Кстати, я пробовал нерекурсивный алгоритм preorder()
fault ошибка сегментации все еще происходит.
Среда: macOS, clang-800.0.38
struct Node{
char val;
Node* left;
Node* right;
};
void preorder(Node *T){
if(T!=NULL){
cout << T->val;
preorder(T->left);
preorder(T->right);
}
}
int main(){
Node *T = (Node *)malloc(sizeof(Node));
Node *p = T;
p->val = 'A';
p->left = (Node *)malloc(sizeof(Node));
p->left->val = 'B';
p->right = (Node *)malloc(sizeof(Node));
p->right->val = 'C';
preorder(T);
return 0;
}