Структура "двоичное дерево", ошибка "неполный тип" - C (СИ)
Формулировка задачи:
Вот структура узла:
Компилятор жалуется, мол там неполный тип. Как исправить так, чтоб через массив работало?
PS именно через массив, потому как дальнейший код опирается на это.
typedef struct node {
char* info;
int key;
struct node branch[2]; // тут ошибка
} Node;Решение задачи: «Структура "двоичное дерево", ошибка "неполный тип"»
textual
Листинг программы
struct node
{
char *info;
int key;
struct node *branch[2];
};
Объяснение кода листинга программы
- Объявляется структура
nodeс полями:- info (тип char*)
- key (тип int)
- branch (тип struct node*)
- В поле
branchможно хранить ссылки на два поддерева, в каждом из которых может быть не более одного узла. - При создании нового узла, его поля
infoиkeyзаполняются значениями, а поляbranch[0]иbranch[1]инициализируются как NULL (что означает отсутствие в данном узле поддеревьев).