스택 기초(2) + 구조체
다음의 코드는 바로 이전의 포스트에서 다뤘던 기초적인 스택과 아주 유사하다. 다른 점이라면 element가 단순 int형이 아니라 구조체가 되었다는 것 뿐이다. 아주 단순하며 설명할 것도 없다....
#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_STACK_SIZE 100 #define MAX_STRING 100 typedef struct { int student_no; char name[MAX_STRING]; char address[MAX_STRING]; } element; element stack[MAX_STACK_SIZE]; int top = -1; int is_empty(){ return top == -1; } int is_full(){ return top == MAX_STACK_SIZE -1; } void push(element item){ if (is_full()) exit(1); stack[++top] = item; } element pop(){ if (is_empty()) exit(1); return stack[top--]; } element peek(){ if (is_empty()) exit(1); return stack[top]; } int main() { element ie, oe; strcpy(ie.name, "HongGilDong"); strcpy(ie.address, "Seoul"); ie.student_no = 20053001; push(ie); oe = pop(); printf("name : %s\n",oe.name); printf("address : %s\n", oe.address); printf("student number : %d\n", oe.student_no); }
정말 설명할 것도 없네.. 오늘꺼 개쉬움..
댓글 없음:
댓글 쓰기