우리가에 가면 그들은 하나의 키워드 아닌 초안 C ++ 표준 섹션 2.12
키워드 테이블 4
목록을 모두 if
와 else
별도로 더이없는 else if
키워드가. 키워드 에 대한 cppreferences 섹션으로 이동하여 더 접근하기 쉬운 C ++ 키워드 목록을 찾을 수 있습니다. .
섹션의 문법 6.4
은이를 명확하게합니다.
selection-statement:
if ( condition ) statement
if ( condition ) statement else statement
if
의는 else if
A는 문 다음 else
용어. 이 섹션은 또한 다음과 같이 말합니다.
[...] 선택 문의 하위 문 ( if 문의 else 형식의 각 하위
문)은 암시 적으로 블록 범위 (3.3)를 정의합니다. selection-statement의 하위 문이 복합 문이 아닌 단일 문 이면 원래 하위 문을 포함하는 복합 문으로 다시 작성된 것과 같습니다.
다음 예제를 제공합니다.
if (x)
int i;
can be equivalently rewritten as
if (x) {
int i;
}
그렇다면 약간 확장 된 예제는 어떻게 구문 분석됩니까?
if
statement_0;
else
if
statement_1;
else
if
statement_2 ;
다음과 같이 구문 분석됩니다.
if
{
statement_0;
}
else
{
if
{
statement_1;
}
else
{
if
{
statement_2 ;
}
}
}
노트
우리는 또한 결정할 수 else if
실현에 의해 하나 개의 키워드가 될 수없는 키워드가 있습니다 식별자 우리는 내 대답 식별자의 문법에서 볼 수있는 당신이 숫자 숫자로 클래스 이름을 시작할 수 있습니까? 공간이 허용되지 않습니다 식별자 너무 그러므로과 else if
하나가 될 수 없습니다 키워드 하지만 두 개의 별도해야합니다 키워드 .
else if