это моя функция push, которая берет в стек и int параметры, превращает int в часть stackNode и возвращает новый стек с добавленным новым узлом (StackNode и Stack уже инициализированы правильно):Push Item to Stack with C
Stack push(Stack stk,int data){
struct StackNode *top = stk.top;
struct StackNode *node;
node->data = data;
node->nextNode = top;
stk.top = node;
stk.count++;
return stk;
}
проблема, которую я имею, что каждый раз, когда я запустить функцию толчка, он более записывает другие элементы StackNode в стеке в качестве параметра я побежал.
Например:
push(stk, 3): stack output = 3 //good so far
push (stk, 4): stack output= 4 4//the correct output would be 3 4!
push(stk, 56): stack out put= 56 56 56 //what's going on!
, что я делаю неправильно, пожалуйста, помогите
использования [ 'станд :: стека <>'] (HTTP: // en.cppreference.com/w/cpp/container/stack); или, предоставить [mcve]. –
@ Дан этот вопрос помечен C, а не C++ –
@GovindParmar занял точку; хотя, может быть, я все еще покрыт «или ...» :-)? –