目录
一、头文件
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#define MAXSIZE 10
二、栈的结构
typedef struct CharStack
{
int top;
int data[MAXSIZE];
}*CharStackPtr;
三、初始化
//初始化
CharStackPtr initStack()
{
CharStackPtr newPtr = (CharStackPtr)malloc(sizeof(struct CharStack));
newPtr->top = -1;
return newPtr;
}
四、判断是否为空
//判断是否为空
int isEmpty(CharStackPtr newStack)
{
if(newStack->top == -1)
return 0;
else
return 1;
}
五、判断是否为满
//判断是否为满栈
int isFull(CharStackPtr newStack)
{
if(newStack->top >= MAXSIZE-1)
return 1;
else
return 0;
}
六、输出
//输出
void outputStack(CharStackPtr newStack)
{
int i;
for(;i<=newStack->top;i++)
{
printf("%c ",newStack->data[i]);
}
printf("\r\n");
}
七、进栈
//进栈
void push(CharStackPtr newStack,int newData)
{
//判断栈满
if(isFull(newStack))
{
printf("The stack is full.\n");
return ;
}
newStack->top++;
newStack->data[newStack->top] = newData;
}
八、出栈</