Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 6 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 26.12.2009
Доброе время суток.
Есть программка, связанная с деревьями. С ней проблема. Вот интересующие куски кода:
Код:
typedef struct node node;
struct node {
    node *left, *right, *parr;
    long key;
    short lr; //0-left, 1 - right
};
node *root, *deletable, *temp2;

Код:
node *dig_addr(node *clevel, int val) {
    if (val == clevel->key)
        return clevel;
    else if (val < clevel->key)
        return dig_addr(clevel->left, val);
    else if (val > clevel->key)
        return dig_addr(clevel->right, val);
}

Код:
deletable = dig_addr(root, cval);


Когда мы добавляем в, допустим, main() последний кусок кода - появляется ошибка конфликтов типов:
Цитата:
main.c:209: error: conflicting types for 'dig_addr'
main.c:53: error: previous implicit declaration of 'dig_addr' was here


В чем дело? Да, алгоритм в этом месте реализован фигово, и все же, это должно работать.



Партнер
 

Member
Статус: Не в сети
Регистрация: 07.01.2010
какие типы у deletable, root и cval? ошибка говорит о том, что типы переменных не соответствуют тому, что было заявлено выше


 

Member
Статус: Не в сети
Регистрация: 26.12.2009
babuinF1 писал(а):
node *root, *deletable, *temp2;

int cval;

Все public


 

Member
Статус: Не в сети
Регистрация: 07.01.2010
так, а на 209 строчке что, а что на 53?


 

Member
Статус: Не в сети
Регистрация: 26.12.2009
ToSHiC писал(а):
так, а на 209 строчке что, а что на 53?

209: node *dig_addr(node *clevel, int val) {

53: deletable = dig_addr(root, cval);


 

Member
Статус: Не в сети
Регистрация: 07.01.2010
значит, ищи опечатки:)

и лучше добавь
Код:
node *dig_addr(node *clevel, int val);

в начало файла


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 6 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan