怎么编写栈,用C语言实现,用指针编写
要求 用C语言编写栈,并且用指针 不知道哦! xxm8023 发表于 2021-1-23 21:12不知道哦!
{:5_100:} extern"C++"{
#include<stack>
} #include <stdio.h>
#include <stdlib.h>
#define SS_TYPE int
#define SS_LEN (100)
#define SS_SIZE (SS_LEN * sizeof(SS_TYPE))
SS_TYPE * _SS = 0;
int _SP = 0;
void InitStack()
{
_SS = (SS_TYPE *)malloc(SS_SIZE);
_SP = SS_LEN;
}
void UninitStack()
{
if(_SS != 0)
{
free(_SS);
_SS = 0;
}
}
int Push(SS_TYPE data)
{
int flag = 0;
if(_SS != 0 && _SP > 0)
{
_SS[--_SP] = data;
flag = 1;
}
return flag;
}
int Pop(SS_TYPE * data)
{
int flag = 0;
if(_SS != 0 && _SP < SS_LEN)
{
*data = _SS;
flag = 1;
}
return flag;
}
int main()
{
int i;
InitStack();
for(i=0 ; i<10 ; i++)
{
Push(i+100);
}
while(Pop(&i))
{
printf("%d,",i);
}
UninitStack();
return 0;
}
页:
[1]