• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

안녕하세요. 선생님.

21.06.30 13:46 작성 조회수 96

0

for (int i = 0; str[i] != '\0'; i++) {

if (str[i] == '(') s.push(str[i]);

else if (str[i] == ')') {

try

{

s.pop();

}

catch (exception e)

{

printf("NO\n");

return 0;

}

}

}

if (s.empty()) printf("YES\n");

else printf("NO\n");

==========================================

저는 (())) 와 같은 상황에서 맨 마지막에 )일때 예외 처리를 해주어서 프로그램을 종료시킬려고 했습니다. 하지만, 이상하게 pop했을때 오류가 발생했음에도 불구하고 catch 로 넘어가지 않았습니다. 혹시 그 이유에 대해서 알 수 있을까요?

답변 1

답변을 작성해보세요.

0

안녕하세요^^

저도 그건 잘 모르겠습니다.