#include <stdlio.h>
#include <stdlib.h>
typedef char StackType;
typedef struct Stack{
StackType data;
struct Stack* next;
}Stack;
void LinkStackInit(Stack* stack){//链表栈的初始化
if (stack == NULL)
return;
stack->next = NULL;
stack->data = '0';
return;
}
Stack* LinkStackPush(Stack* stack,StackType value){//入栈,对链表进行头插
if (stack == NULL)
return NULL;
Stack* new = (Stack*)malloc(sizeof(Stack));
new->data = value;
new->next = stack->next;
stack->next = new;
return stack;
}
size_t * LinkStackPop(Stack* stack){//出栈
if (stack == NULL)
return 0;
if (stack->next == NULL)
return 0;
//free(tmp);
Stack* head = stack;
while(head->next->next != NULL){
head = head->next;
}
free(head->next->next);
head->next->next = NULL;
return 1;
}
Stack* LinkStackTop(Stack* stack){
if (stack == NULL)
return NULL;
return stack->next;
}
int main(){
return 0;
}