C语言-栈

来源:互联网 发布:知乎南方采暖方式 编辑:程序博客网 时间:2024/06/03 15:59

栈的模版

#include<stdio.h>#include<stdlib.h>typedef int ElemType;typedef struct linknode{    ElemType data;    struct linknode *next;}LiStack;/*---初始化栈---*/void InitStack(LiStack * &s){    s=(LiStack *)malloc(sizeof(LiStack));    s->next=NULL;} /*---销毁栈---*/void DestroyStack(LiStack * &s){    LiStack *p=s,*q=s->next;    while(q!=NULL)    {        free(p);        p=q;        q=p->next;    }    free(p);}/*---判断栈是否为空---*/bool StackEmpty(LiStack *s){    return (s->next==NULL);}/*---进栈---*/void Push(LiStack * &s,ElemType e){    LiStack *p;    p=(LiStack *)malloc(sizeof(LiStack));    p->data=e;    p->next=s->next;    s->next=p;}/*---出栈---*/bool Pop(LiStack * &s,ElemType &e){    LiStack *p;    if(s->next==NULL)    {        return false;    }    p=s->next;    e=p->data;    s->next=p->next;    free(p);    return true;}/*---取栈顶元素---*/bool GetTop(LiStack * &s,ElemType &e){    if(s->next==NULL)    {        return false;    }    e=s->next->data;    return true;}int main(){    return 0;}

欢迎关注我的微信个人订阅号
这里写图片描述
每天多学一点0.0

0 0
原创粉丝点击