Advertisement
Guest User

Untitled

a guest
Jul 13th, 2018
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.74 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef struct node {
  5. int element;
  6. struct node *next;
  7. } node;
  8.  
  9. // Head refers to a pointer to a node.
  10. typedef node* head;
  11.  
  12. typedef struct list {
  13. head head;
  14. } list;
  15.  
  16. void push(list *existing_list, int element) {
  17. node *new_node = malloc(sizeof(node));
  18. new_node->element = element;
  19. new_node->next = existing_list->head;
  20. existing_list->head = new_node;
  21. }
  22.  
  23. int pop(list *existing_list){
  24. int elem = existing_list->head->element;
  25. free(existing_list->head);
  26. existing_list->head = existing_list->head->next;
  27. return elem;
  28. }
  29.  
  30. int main(){
  31. list initial_list;
  32. push(&initial_list, 2);
  33. push(&initial_list, 3);
  34. printf("%i\n", pop(&initial_list));
  35. printf("%i\n", pop(&initial_list));
  36. return 0;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement