enum 관련 자료형 타입 질문드립니다.
PrinceSs
2023.04.01
질문 제목 : 자료형이 안맞는다고 오류가 납니다.
후위표기식 연산코드입니다,
질문 내용 :
//enum으로 연산자를 선언해주고
typedef enum {lparen, rparen, plus, minus, times, divide, mod, eos, operand}precedence;
//연산자가 들어갈 스택을 잡아줬습니다.
precedence pstack[max_stack_size];
// 연산자 스택 push 함수입니다. push 해줄값 item 이 인트형이고 pstack 도 인트형스택으로 생각되는데
그게 아닌것 같습니다. 설명좀 부탁드립니다.
void postfix_add(int *top, int item, precedence pstack[])
{
if(*top = max_stack_size -1)
{
printf(stack have space any more. please enter 0 \n);
}
pstack[++(*top)] = item; // 이부분에서 오류가 나는데 int 형식의 값을 precedence 형식의 엔터티에
할당할수 없다고 나옵니다.
}