Форум программистов, компьютерный форум CyberForum.ru

стек - C++

Войти
Регистрация
Восстановить пароль
 
KBAC
1 / 1 / 0
Регистрация: 10.05.2010
Сообщений: 72
25.12.2010, 14:24     стек #1
в функцию "взятие из стека" подается одно значение головы (нужное, правильное), а внутри функции уже совсем другое(не нужное и не правильное) head меняется в отладке на переходе со 2 на 3 строчку
C++
1
2
3
4
5
6
STACK* PopStack(STACK* &head)
{
    STACK *p=head;
    head=head->next;
    return p;
}
вызов :
C++
1
 STACK elem = *PopStack(head);
первый раз такое 0_0 вроде как обычно все передаю, и в
C++
1
2
3
4
5
6
7
8
void PushStack(STACK elem,STACK* &head)
{
    STACK *ptr = head;
    head = new STACK;
 
    head=&elem;
    head->next = ptr;
}
все работает правильно. где ошибка, подскажите !
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2010, 14:24     стек
Посмотрите здесь:

Стек C++
Стек C++
C++ при работе рекурсивной функции заканчивается стек и программа соответственно; как сделать так, чтобы она писала "стек закончился"?
C++ Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами
C++ Стек
C++ Стек
Структура стек (: добавить элемент в стек, удалить элемент из стека, получить значение с вершины стека, размер стека...) C++
Стек C++
Стек C++
Переменные в стеке. Где хранятся? Как обрабатываются? Есть ли программный стек или только стек процессора? C++
Стек C++
C++ Стек

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
selevit
 Аватар для selevit
79 / 75 / 3
Регистрация: 08.10.2008
Сообщений: 296
25.12.2010, 15:25     стек #2
Цитата Сообщение от KBAC Посмотреть сообщение
все работает правильно. где ошибка, подскажите !
это как?
.4rray
8 / 8 / 0
Регистрация: 15.12.2010
Сообщений: 41
25.12.2010, 16:53     стек #3
Ну как минимум в PopStack нужно удалять элемент, который взяли.
KBAC
1 / 1 / 0
Регистрация: 10.05.2010
Сообщений: 72
26.12.2010, 19:46  [ТС]     стек #4
selevit, в PushStack все ништяк всмысле.
.4rray, так если я его удалю , то удалится и возвращенное значение

Добавлено через 22 часа 28 минут
скорее всего что, head как то неправильно передается в функцию, только ни как не могу понять каким образом..
Yandex
Объявления
26.12.2010, 19:46     стек
Ответ Создать тему
Опции темы

Текущее время: 09:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru