ตัวอย่างโค้ดภาษาซี พลัส พลัส ในการวนรับค่าตัวเลขจากคีย์บอร์ด เก็บค่าโดยใช้ Stack แล้วนำค่าที่ได้จาก Stack แสดงผลออกจอภาพ
ก่อนอื่นขอแนะนำหลักการหรือวิธีการทำงานของของ Stack ก่อนคร่าว ๆ โดยจำง่าย ๆ คือ เข้าก่อนออกที่หลัง เข้าที่หลังออกก่อน
ตัวอย่างโค้ด
#include <iostream> #include <stack> using namespace std; int main () { stack<int> mystack; int i = 0; int temp; do{ cout << "Push number to Stack " << (i+1) << " : " ; cin >> temp; mystack.push(temp); i++; }while(i < 5); cout << "\n"; while (!mystack.empty()){ cout << "Pop number out Stack " << i << " : " << mystack.top(); cout << "\n"; mystack.pop(); i--; } cout << "\n"; return 0; }
คำอธิบาย
- ต้องทำการ #include <stack> ถึงจะเรียกใช้ stack ได้
- push() คือ เพิ่มค่าเข้าไปใน Stack
- empty() คือ เช็คว่า Stack เป็นค่าว่างหรือยัง
- top() คือ ดูว่าค่าที่อยู่บนสุดของ Stack คืออะไร
- pop() คือ นำค่าที่อยู่บนสุดของ Stack ออก