数据结构--栈的实现

头文件
//栈结构体定义
struct Stack {
    int Length;
    char *head, *rear;
};

void InitStack(Stack *, int);

void EnStack(Stack *, char);

char DeStack(Stack *);
实现:
//构造栈
void InitStack(Stack *q,int length){
    q->Length = length;
    q->head = (char *)malloc(sizeof(char)*q->Length);
    q->rear = q->head;
}

//插入数据
void EnStack(Stack *q,char key){
    *(q->head) = key;
    q->head=q->head+1;
}


//取出数据
char DeStack(Stack *q){
    char temp = *(q->head);
    q->head=q->head-1;
    return temp;
}
原文地址:https://www.cnblogs.com/INnoVationv2/p/5553226.html