stack.cpp

来自「参照网上的例子改写的多叉树的读写程序」· C++ 代码 · 共 39 行

CPP
39
字号
#include <assert.h>
#include <string.h>
#include "mystack.h"




void init_stack(struct mystack *stk)
{
    stk->ptr = 0;
}

void push_stack(struct mystack *stk, struct tree_node  data)
{
  assert(stk->ptr < MAXL);
  //stack->data[stack->ptr++] = data;
	
  strcpy(stk->data[stk->ptr].data,data.data);
  strcpy(stk->data[stk->ptr].value,data.value);
  stk->data[stk->ptr].flag = data.flag;
  stk->data[stk->ptr].firstchild = data.firstchild;
  stk->data[stk->ptr].nextsibling = data.nextsibling;
  stk->ptr++;

}

struct tree_node *pop_stack(struct mystack *stk)
{
  assert(stk->ptr > 0);
  return(&stk->data[--stk->ptr]);
}

struct tree_node  topOfstack(struct mystack *stk)
{
  assert(stk->ptr > 0);
  return(stk->data[stk->ptr - 1]);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?