voidPush(LinkStack** lin)// Use second rand pointer to change the stack-top's position. { int e = 0; LinkStack* p = (LinkStack*)malloc(sizeof(LinkStack)); printf("Input the number you want to insert:\n"); scanf_s("%d", &e); if ((*lin)->next != NULL) { if (p) { p->data = e; p->next = (*lin); (*lin) = p; } } else { (*lin)->data = e; } }
voidPop(LinkStack** lin)// Use second rand pointer to change the stack-top's position. { int en; LinkStack* pn = (LinkStack*)malloc(sizeof(LinkStack)); if ((*lin) == NULL) { printf("ERROR.\n"); } else { if (pn) { en = (*lin)->data; pn = (*lin); (*lin) = (*lin)->next; free(pn); printf("Element %d is poped out.\n", en); } }
}
voidGetTop(LinkStack* lin) { if (lin != NULL) { printf("The top element is: %d\n", lin->data); } }