Я пытаюсь создать дерево в C (я знаю, как создать дерево в java, но так как я учу C, я подумал, что это будет отличным способом действительно изучить указатели), но я я не получаю вывод, когда я печатаю данные root.
Это мой код:
#include<stdio.h>
typedef struct Node
{
struct Node *right;
struct Node *left;
int data;
} Node;
Node* create_node(int data);
Node* create_root(int nodedata)
{
Node* root;
root->data = nodedata;
return root;
}
int main()
{
Node* root = create_root(5);
printf("%d", root->data);
return 0;
}
Проблема в том, как я связываю узлы с левым и правым указателями или как я возвращаю функцию на указатель узла?