C 토큰(Token)의 개념
C 프로그램은 여러 개의 명령어(문장)로 구성되며, 각 명령어는 다시 개별적인 최소 단위들로 이루어져 있습니다.
이처럼 C 프로그램을 구성하는 가장 작은 개별 단위를 토큰(token)이라고 부릅니다. 즉, C 프로그램의 모든 문장은 토큰들의 집합이라고 할 수 있습니다.
토큰은 C 프로그램을 만드는 데 사용되는 기본 빌딩 블록(building block)으로, 컴파일러가 소스 코드를 분석할 때의 기준 단위이기도 합니다.
C 토큰의 종류
C 프로그램에서 토큰은 다음과 같은 요소들을 포함합니다.
- 키워드(Keywords) – int, for, return 등 C 언어에서 미리 정의된 예약어
- 식별자(Identifiers) – 변수, 함수, 배열 등에 붙이는 이름
- 연산자(Operators) – +, -, *, = 처럼 연산을 수행하는 기호
- 특수 기호(Special Symbols) – { }, ( ), ; , # 등 특별한 의미를 갖는 기호
- 상수(Constants) – 10, 3.14처럼 값이 고정된 수
- 문자열(Strings) – 큰따옴표로 묶인 문자들의 집합
- 데이터 값(Data Values) – 프로그램에서 실제로 사용되는 값들
정리하면, 위와 같은 키워드·식별자·연산자·특수 기호·상수·문자열·데이터 값들이 모여 토큰을 이루고, 이 토큰들이 결합하여 하나의 완전한 C 프로그램이 완성됩니다.
예제 코드
다음은 대문자 알파벳(A~Z)을 출력하는 C 프로그램입니다.
#include<stdio.h>
#include<conio.h>
int main(){
int i;
printf("ASCII ==> Character\n");
for(i = 65; i <= 90; i++)
printf("%d ==> %c\n", i, i);
return 0;
}
실행 결과
위 프로그램을 실행하면 아래와 같은 결과가 출력됩니다.
ASCII ==> alphabet Character 65 ==> A 66 ==> B 67 ==> C 68 ==> D 69 ==> E 70 ==> F 71 ==> G 72 ==> H 73 ==> I 74 ==> J 75 ==> K 76 ==> L 77 ==> M 78 ==> N 79 ==> O 80 ==> P 81 ==> Q 82 ==> R 83 ==> S 84 ==> T 85 ==> U 86 ==> V 87 ==> W 88 ==> X 89 ==> Y 90 ==> Z
예제 코드 속 토큰 살펴보기
위 예제에서도 다양한 종류의 토큰을 직접 확인할 수 있습니다.
- 키워드: int, for, return
- 식별자: main, i, printf
- 연산자: =, <=, ++
- 특수 기호: { }, ( ), ; , #
- 문자열: "ASCII ==> Character\n"
- 상수: 65, 90, 0
이처럼 하나의 짧은 프로그램 안에도 여러 종류의 토큰이 함께 사용되며, 이들이 모여 의미 있는 명령어를 형성합니다. C 언어를 배울 때 토큰의 개념을 정확히 이해해 두면 문법 학습과 오류 분석에 큰 도움이 됩니다.