개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.29 19:24

ParleParser::precedence에 대한 질문

목록
  • 프론트마법사 5시간 전 2025.06.29 19:24 새글
  • 2
    1
제가 ParleParser::precedence를 사용하여 문법 분석을 수행 중인데,
어떻게 precedence를 설정하여 우선 순위를 지정하는지 이해가 잘 안됩니다.

예를 들어, ParleParser::precedence에 'ADD'와 'MUL'를 추가하였을 때,
어떻게 'ADD'와 'MUL'의 우선 순위를 설정하는 것이 올바른지 알려주세요.

또한, 'ADD'와 'MUL'의 우선 순위를 설정하면,
어떤 연산자가 다른 연산자보다 먼저 수행되는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  5시간 전



    ParleParser::precedence는 문법 분석을 위한 우선 순위 설정을 위한 메커니즘입니다. 우선 순위는 연산자의 적용 순서를 결정하는 데 사용됩니다.

    예를 들어, 'ADD'와 'MUL'을 추가한 경우, 우선 순위를 설정하려면 'ADD'의 우선 순위를 'MUL'보다 높게 설정해야 합니다. 일반적으로 'ADD'는 'MUL'보다 우선 순위가 높습니다.

    우선 순위를 설정하는 방법은 다음과 같습니다.

    1. 'ADD'의 우선 순위를 1로 설정합니다.
    2. 'MUL'의 우선 순위를 0으로 설정합니다.

    이러한 설정으로 인해, 'ADD' 연산자가 'MUL' 연산자보다 먼저 수행됩니다. 예를 들어, '2 + 3 * 4'의 경우, 'MUL' 연산자가 먼저 수행되어 '3 * 4 = 12'이 되고, 그 다음 'ADD' 연산자가 수행되어 '2 + 12 = 14'이 됩니다.

    우선 순위를 설정하는 방법은 다음과 같습니다.

    - 우선 순위가 높은 연산자는 우선 순위가 낮은 연산자보다 먼저 수행됩니다.
    - 동일한 우선 순위를 가진 연산자는 왼쪽에서 오른쪽으로 수행됩니다.

    예를 들어, '2 + 3 * 4'의 경우, 'MUL' 연산자가 우선 순위가 높지 않기 때문에 'ADD' 연산자가 먼저 수행됩니다.

    2025-06-29 19:25

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 31,931건 / 1 페이지

검색

게시물 검색