1、C语言标准库当中没有与stack栈相关的标准类。
2、可以自定义这个头文件,例如:
struct Stack{
int mData[100]
int mLen
}
//初始化栈
void InitStack(Stack &S)
{
S.mLen = 0
}
//元素进栈
void Push(Stack &S,int item)
{
S.mData[S.mLen++] = item
}
//删除栈顶元素
int Pop(Stack &S)
{
S.mLen--
return S.mData[S.mLen]
}
//返回栈顶元素
int Peek(Stack &S)
{
return S.mData[S.mLen-1]
}
//判断栈是否为空
bool EmptyStack(Stack &S)
{
if(S.mLen == 0) return true
return false
}
//清空栈
void Clear(Stack &S)
{
for(int i = 0i<S.mLen++i)
{
Pop(S)
}
}
有.分别可以用以下的三种方法包含:#include<stack.h>
#include<queue.h>
或者
#include<stack>
#include<stack>
using namespace std//把STL里面的东西全部都包含进来了
又或者
#include<stack>
#include<stack>
using std::stack
using std::queue
如果是提示头文件不存在的话那是你用的VC里面没有包含STL,那你就要去下载一个咯!
其实以后遇到类似的问题,你上MSDN上一看就知道怎么用了。
头文件是 stack例如声明一个存int型数据的栈,可以是:
#include <stack>
...
stack <int>s
判断栈s是否为空,写为: s.empty( )
删除元素,写为:s.pop( )
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)