栈的创建与注解
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
typedef struct Node
{
int data;
struct Node * pNext;
}NODE,PNODE;
typedef struct Stack//一个包括栈头、栈尾的数据类型的声明 ,其成员类型节点的相同,由于要改变位置,故为节点指针型
{
PNODE pTop;//栈头
PNODE pBottom;//栈尾
}STACK, PSTACK;
void init(PSTACK);//栈的初始化 ,先创建一个没用的头指针,使得栈头与栈尾同时指向它,便于操作
void push(PSTACK pS,int );// *3压栈,变量有int类型,可以直接写int,后面函数具体的没写函数名
void traverse(PSTACK);//输出,将创建的栈进行输出
bool pop(PSTACK pS,int * val);//出栈,将最上边的节点进行弹出
void clear(PSTACK pS);// 清空,将栈中的元素全部清除
int main()
{
int val;
STACK S;//数据类型的初始化
init(&S);
//24-27是压栈
push(&S,1);
push(&S,2);
push(&S,3);
traverse(&S);
//30-31