Форум программистов, компьютерный форум, киберфорум
Наши страницы

написание функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подключение функции http://www.cyberforum.ru/cpp-beginners/thread640581.html
У меня в отдельном файле встроенна функция. Я этот файл подключил еще в двух файлах, так как мне ее нужно использовать несколько раз. При компиляции возникает ошибка: 1>------ Построение...
C++ Указатель на объект Вот схема кода class A { int n; }; class B { A *a; http://www.cyberforum.ru/cpp-beginners/thread640579.html
Странный конструктор C++
class Int { private: int intez; public: Int():intez(0){} Int(int intz):intez(intz){} };
Не работает extern для vector C++
Добрый день всем. Подскажите пожалуйста в чем беда то? Есть глобальный vector: extern vector<Card> CardList А дальше в конструкторе я его заполняю. for( int i = 0; i < CARDCOUNT; i++ ){
C++ Наследование и виртуальные функции http://www.cyberforum.ru/cpp-beginners/thread640546.html
Скажите, часто ли вы при проектирование реальных программ используете наследование?
C++ Циклический вывод #include <iostream> #include <conio.h> #include <windows.h> int main() { int x=0, y=0; int step=10; char c; подробнее

Показать сообщение отдельно
KostyaKulakov
Заблокирован

написание функции - C++

21.08.2012, 15:18. Просмотров 569. Ответов 4
Метки (Все метки)

Stack.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "Stack.h"
 
Node* push(Node** pTop, info_t value)
{
    Node* newNode = new Node;
    newNode->info = value;
    newNode->prev = *pTop;
    *pTop = newNode;
    return newNode;
}
 
 
info_t pop(Node** pTop)
{
    Node* oldTop = *pTop;
    info_t info = oldTop->info;
 
    *pTop = (*pTop)->prev;
    delete oldTop;
    return info;
}
 
info_t getTopValue(Node* top)
{
    return top->info;
}
 
void printStackElement(Node** top)
{
 
    while (!isEmpty(*top))
    {
        cout << pop(*&top) << endl;
    }
 
 
    
}
 
bool isEmpty(Node* top)
{
    return top == NULL;
}
Stack.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef STACK_H_
#define STACK_H_
 
#include <iostream>
using namespace std;
 
#define NULL 0
 
typedef char info_t;
 
struct Node
{
    info_t info;
    Node* prev;
};
 
/* Функция добавляет в стек новый элемент со значением value
   и возвращает указатель на новую вершину стека */
Node* push(Node** pTop, info_t value);
 
/* Функция удаляет элемент с вершины стека и возвращает
   хранившееся там значение. Функция НЕ проверяет, пуст ли стек.
   Ответственность за проверку того, что стек не пуст, ложится
   на вызывающую функцию. */
info_t pop(Node** pTop);
 
/* Функция возвращает значение, хранящееся в элементе, находящемся
   в вершине стека. Ответственность за проверку того, что стек не пуст,
   ложится на вызывающую функцию. */
info_t getTopValue(Node* top);
 
/* Функция проверяет, не пуст ли стек */
bool isEmpty(Node* top);
 
/* Функция печатает, все элементы стэка. */
void printStackElement(Node** top);
 
#endif
main.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "Stack.h"
 
int main()
{
    Node* top = NULL;
 
    // Заполнение стека некоторыми элементами
    push(&top, '(');
    push(&top, '[');
    push(&top, '{');
 
    // Извлечение и печать всех элементов стека
    printStackElement(&top);
    cout << endl;
 
    printStackElement(&top);
//  printStackElement(&top);
 
}
суть в том нужно сделать так чтобы функция printStackElement не трогала значения ну те выводила их и не изменяла ну или потом возращала на свои места. она ивзлекает их и всё только 1 раз можно эту функцию применить а мне надо чтобы хоть сколько. вот хз как сделать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.