2017-01-25 10 views
-4
#define LEFT 1 
#define BAL 0 
#define RIGHT -1 

typedef struct avl { 
    int value; 
    int bal; 
    struct avl *left, *right; 
} *AVL; 

AVL lower (AVL a){ 
    while ((a.left != NULL) || (a.right != NULL)) { 
     if (a.bal = LEFT){ 
      AVL lower (a.left); 
     } else AVL lower (a.right); 
    } 
    return (a); 
} 

В этом коде у меня есть проблемы с доступом к struct внутри моей struct. Что я должен писать в этом коде, где у меня есть a.left, a.right? Спасибо вам всем.AVL дерева, доступ указатель в структуры

+0

Что конкретно вы подразумеваете под «У меня проблема»? –

+0

Код не запускается, он получает компиляцию erros, потому что я использую что-то worng, но я не знаю, как я должен это делать – Dost

+0

Тогда вы должны опубликовать, что говорят об ошибках. –

ответ

1

a является AVL, который является указатель к struct avl. Таким образом, чтобы получить доступ к полю этой структуры, вам понадобится что-то вроде a->left.

+0

Спасибо. Я понял это прямо сейчас. – Dost