/**
* 实现链栈各种基本运算的算法
* 目的:
* 领会链栈存储结构和掌握链栈中各种基本运算算法设计
* 主要功能:
* 1、初始化栈s
* 2、判断栈s是否非空
* 3、依次进栈元素a、b、c、d、e
* 4、判断栈s是否非空
* 5、输出栈序列
* 6、判断栈s是否非空
* 7、释放栈
*/
#include <stdio.h>
#include <malloc.h>
#include <stdbool.h>
typedef char ElemType;
typedef struct linknode
{
ElemType data; // 数据域
struct linknode *next; // 指针域
}LinkStNode; // 链栈类型定义
/*----------------------初始化链栈------------------------*/
static void init_stack(LinkStNode *&s) // 指针的引用
{
s = (LinkStNode *)malloc(sizeof(LinkStNode));
s->next = NULL;
}
/*----------------------销毁链栈------------------------*/
static void des