C 토큰, 식별자, 키워드: 토큰과 그 유형 이해하기
문자 집합(Character Set)이란?
다른 프로그래밍 언어와 마찬가지로 C에도 고유한 문자 집합이 있습니다. C 프로그램은 문자와 기호로 구성된 데이터를 조작하는 명령어 시퀀스입니다. 컴파일러는 대부분의 서식 문자를 무시하지만, 이는 인간 가독성을 위해 필수적입니다.
C 문자 집합은 네 그룹으로 나뉩니다:
- 문자 (대문자 A-Z, 소문자 a-z)
- 숫자 (0-9)
- 공백 (스페이스, 탭, 줄바꿈, 캐리지 리턴)
- 특수 문자 (구두점 및 기호)
C에서 사용되는 특수 문자 전체 목록:
| 특수 문자 | 설명 |
| , | 쉼표 |
| { | 여는 중괄호 |
| . | 마침표 |
| } | 닫는 중괄호 |
| ; | 세미콜론 |
| [ | 여는 대괄호 |
| : | 콜론 |
| ] | 닫는 대괄호 |
| ? | 물음표 |
| ( | 여는 괄호 |
| ' | 아포스트로피 |
| ) | 닫는 괄호 |
| " | 큰따옴표 |
| & | 앰퍼샌드 |
| ! | 느낌표 |
| ^ | 캐럿 |
| | | 수직 막대 |
| + | 덧셈 |
| / | 슬래시 |
| - | 뺄셈 |
| \ | 역슬래시 |
| * | 곱셈 |
| ~ | 틸드 |
| / | 나눗셈 |
| _ | 언더스코어 |
| > | 보다 큼 / 닫는 꺾쇠 괄호 |
| $ | 달러 기호 |
| < | 보다 작음 / 여는 꺾쇠 괄호 |
| % | 백분율 기호 |
| # | 해시 기호 |
C에서 토큰(Token)이란?
토큰은 C 컴파일러가 인식하는 가장 작은 의미 단위입니다. 어휘 분석 단계에서 소스 코드는 파싱과 코드 생성 전에 토큰으로 분해됩니다. C 토큰은 여섯 범주로 나뉩니다:
- 키워드(Keywords)
- 연산자(Operators)
- 문자열(Strings)
- 상수(Constants)
- 특수 문자(Special Characters)
- 식별자(Identifiers)
키워드와 식별자
C의 모든 단어는 키워드이거나 식별자입니다. 키워드는 예약어로 고정된 의미를 가지며 이름에 재사용할 수 없습니다. 식별자는 변수, 함수, 타입 등에 개발자가 붙이는 이름입니다.
C 키워드
C 언어에는 32개의 키워드가 있으며 모두 소문자입니다. 빠른 참조를 위해 표로 정리했습니다:
| C 키워드 |
| auto | double | int | struct |
| break | else | long | switch |
| case | enum | register | typedef |
| char | extern | return | union |
| const | short | float | unsigned |
| continue | for | signed | void |
| default | goto | sizeof | volatile |
| do | if | static | while |
식별자(Identifiers)
식별자는 변수, 함수, 구조체, 열거형 등에 부여하는 이름입니다. C 표준은 식별자에 여러 규칙을 부과합니다:
- 첫 글자는 문자(A-Z, a-z) 또는 언더스코어(_)여야 함
- 이후 문자에는 문자, 숫자(0-9), 언더스코어 가능
- 32개 키워드 중 어느 것도 식별자가 될 수 없음
- 공백 포함 불가
- 컴파일러가 강제하지는 않지만, 의미 있는 이름은 가독성과 유지보수성 향상
요약
- C 토큰은 컴파일러가 처리하는 가장 작은 단위
- 키워드는 고정된 의미를 가진 예약어, 총 32개
- 식별자는 프로그램 요소를 고유하게 명명하며 엄격한 명명 규칙 준수