Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++의 세미콜론: 문법 속 필수 구두점의 역할과 사용 위치

C++ 프로그래밍 언어에서 세미콜론(;)은 단순히 줄을 구분하는 기호가 아니라, 문법 구조를 완성하는 핵심 구두점(punctuator)입니다.

ISO C++ 표준에서의 세미콜론

ISO C++ 표준에 따르면, C++ 프로그램의 어휘적 표현(lexical representation)에는 전처리기(preprocessor)의 문법에 직접 사용되거나, 연산자(operator)와 구두점(punctuator) 토큰으로 변환되는 여러 가지 전처리 토큰(preprocessing tokens)이 포함됩니다. 그중에서 세미콜론은 C++에서 공식적으로 정의된 구두점 중 하나로 분류됩니다.

세미콜론이 반드시 붙는 문법 요소

C++ 문법에서 세미콜론 문자는 다음과 같은 구문 요소의 끝에 위치해야 합니다(아래 목록이 전체는 아닐 수 있습니다).

  • 식문(expression-statement) − 변수 대입, 함수 호출 등 하나의 식으로 구성된 문장
  • do/while 반복문(iteration-statement) − do-while 루프의 마지막 조건 뒤
  • 다양한 점프문(jump-statements) − break, continue, return, goto 문
  • 단순 선언(simple-declaration) − 변수나 객체를 선언하는 문장

간단한 코드 예시

int x = 10;          // 단순 선언
x = x + 1;           // 식문
if (x > 5) break;    // 점프문
do {                 // do-while 반복문
    x--;
} while (x > 0);     // 조건 뒤의 세미콜론 필수

세미콜론이 중요한 이유

세미콜론은 컴파일러에게 하나의 문(statement)이 끝났음을 알려주는 신호 역할을 합니다. 특히 do-while 반복문의 경우 닫는 중괄호 뒤 조건 다음에 세미콜론을 생략하면 컴파일 오류가 발생하므로 주의해야 합니다. 반면 if문, for문 등 다른 제어문은 본문이 중괄호로 감싸져 있으면 세미콜론이 필요하지 않다는 점도 함께 기억해 두면 좋습니다.

위에서 소개한 문법 요소들은 모두 C++ 표준 문법의 일부입니다. 각 구문에 대한 더 자세한 정의는 ISO C++ 표준 명세서에서 확인할 수 있습니다.