Advertisement
Guest User

Untitled

a guest
Feb 2nd, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. struct frame {
  4. int data;
  5. frame *next;
  6. };
  7.  
  8. struct stack {
  9. int size;
  10. frame *head;
  11. };
  12.  
  13.  
  14. void initialize(stack *stk){
  15. stk->size = 0;
  16. stk->head = nullptr;
  17. }
  18.  
  19. void push(stack *stk, int number) {
  20. frame frm = {number, stk->head};
  21. std::cout << "push" << frm.data << std::endl;
  22. stk->size += 1;
  23. stk->head = &frm;
  24. }
  25.  
  26. int pop(stack *stk) {
  27. if (stk->size == 0) throw std::runtime_error("underflow");
  28. int value = stk->head->data;
  29. stk->size -= 1;
  30. stk->head = stk->head->next;
  31. return value;
  32. }
  33.  
  34.  
  35. int main() {
  36. stack *stk;
  37. initialize(stk);
  38. std::cout<<"test";
  39. push(stk, 5);
  40. push(stk, 3);
  41. std::cout << "Pop" << pop(stk) << std::endl;
  42.  
  43. return 0;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement