C++ 토큰
토큰은 컴파일러에게 의미 하는 C++ 프로그램의 최소 요소입니다. 이러한 종류의 토큰을 인식 하는 C++ 파서는: 식별자, 키워드, 리터럴, 연산자, 문장 부호, 및 기타 구분 기호입니다. 이러한 토큰 스트림은 변환 단위를 구성 합니다.
토큰은 일반적으로 "공백"으로 구분됩니다. 하나 이상의 공백이 있습니다:
비어 있음
가로 또는 세로 탭
새로운 줄
Formfeeds
설명
고려된 토큰은 다음과 같습니다:
keywordidentifierconstantoperatorpunctuator
다음은 간주된 전처리 토큰입니다:
머리글-nameidentifierpp-numbercharacter-constantstring-literaloperatorpunctuator 위의 형식 중 하나가 될 수 없는 각 문자로 공백 문자
파서는 입력된 문자를 사용 하여 왼쪽에서 오른쪽으로 검색의 긴 토큰 수를 만들어서 입력 스트림에서 토큰을 구분 합니다. 이 코드 조각을 고려 합니다:
a = i+++j;
코드를 작성 하는 프로그래머가 예상 했던 두개의 명세서:
a = i + (++j)
a = (i++) + j
파서가 입력 스트림에서 가장 긴 토큰을 만들기 때문에, 그것은 두 번째 해석을 선택하고, 다음 토큰을 만듭니다i++, +, 및 j.