#include<stdio.h>
#define MAX_STACK_SIZE 100
typedef int element;
typedef struct {
element stack[MAX_STACK_SIZE];
int top;
}StackType;
//스택초기화함수
void init{ StackType *s)
#define MAX_STACK_SIZE 100
typedef int element;
typedef struct {
element stack[MAX_STACK_SIZE];
int top;
}StackType;
//스택초기화함수
void init{ StackType *s)
이부분이 오류가 나는데 왜그런건가요?
불완전한 형식은 사용할수 없다고 나오는데 이 오류를 고치기 위해선 어떡해야하죠?
{
s->top = -1;
}
int is_empty(StackType *s)
{
return(s->top == -1);
}
int is_full(StackType *s)
{
return(s->top == (MAX_STACK_SIZE - 1));
}
void push(StackType *s, element item)
if (is_full(s)) {
fprintf(stderr, "스택 포화 에러\n");
return;
}
else s->stack[++(s->top)] = item;
}
//삭제함수
element pop(StackType *s)
{
if (isempty(s)) {
fprintf(stderr, "스택 공백 에러\n");
exit(1);
}
else return s->stack[(s->top)--];
}
//피크함수
element peek(StackType *s)
{
if(is_empty(s))
{
fprintf(stderr, "스택공백에러\n");
exit(1);
{
s->top = -1;
}
int is_empty(StackType *s)
{
return(s->top == -1);
}
int is_full(StackType *s)
{
return(s->top == (MAX_STACK_SIZE - 1));
}
void push(StackType *s, element item)
if (is_full(s)) {
fprintf(stderr, "스택 포화 에러\n");
return;
}
else s->stack[++(s->top)] = item;
}
//삭제함수
element pop(StackType *s)
{
if (isempty(s)) {
fprintf(stderr, "스택 공백 에러\n");
exit(1);
}
else return s->stack[(s->top)--];
}
//피크함수
element peek(StackType *s)
{
if(is_empty(s))
{
fprintf(stderr, "스택공백에러\n");
exit(1);
}
else return s->stack[s->top];
}
else return s->stack[s->top];
}
//주 함수
void main()
{
StackType s;
init(&s);
push(&s, 1);
push(&s, 2);
push(&s, 3);
printf("%d\n",pop(&s));
printf("%d\n", pop(&s));
printf("%d\n", is_empty(&s));
void main()
{
StackType s;
init(&s);
push(&s, 1);
push(&s, 2);
push(&s, 3);
printf("%d\n",pop(&s));
printf("%d\n", pop(&s));
printf("%d\n", is_empty(&s));
}
ㅅㅂ init 뒤에 중괄호 있잖아
여윽시 행님 대단하십니다 천재신듯 나는 빡대가리라 괄호구분못해서 저거가지고 20분동안 고민함
에러가 났으면 에러 난 맨 윗줄부터 매의 눈으로 보셈.. 나도 학부땐 이런 실수 함