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

C 언어의 토큰(Token)이란 무엇인가? 개념부터 종류까지

토큰(Token)은 컴파일러가 의미를 인식할 수 있는 프로그램의 가장 작은 구성 단위를 말합니다. 컴파일러는 소스 코드를 이러한 최소 단위인 토큰들로 분해한 뒤, 각 토큰을 컴파일의 여러 단계(어휘 분석, 구문 분석 등)로 전달하여 처리합니다.

C 언어 토큰의 종류

C 언어에서 토큰은 아래와 같이 여섯 가지 유형으로 분류됩니다.

  • 키워드(Keywords) — int, return처럼 C 언어가 미리 정의해 둔 예약어
  • 식별자(Identifiers) — 변수명, 함수명 등 사용자가 직접 정의하는 이름
  • 상수(Constants) — 값이 변하지 않는 고정된 수치
  • 문자열(Strings) — 큰따옴표로 묶인 문자들의 집합
  • 특수 기호(Special Symbols) — { }, ( ), # 처럼 특정 용도로 쓰이는 기호
  • 연산자(Operators) — +, -, * 처럼 연산을 수행하는 기호

예제 코드

아래는 식별자, 키워드, 변수 등 다양한 토큰이 실제로 사용된 C 프로그램입니다.

#include <stdio.h>
int main(){
   int a,b,c;
   printf("enter a and b values: \n");
   scanf("%d%d",&a,&b);
   c=a*b;
   printf("value of c=%d",c);
   return 0;
}

실행 결과

위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.

enter a and b values:4 5
value of c=20

코드 속 토큰 분석

위 프로그램에서 각 요소가 어떤 토큰에 해당하는지 살펴보면 다음과 같습니다.

  • main → 함수 이름으로서의 식별자(identifier)
  • int → 자료형을 지정하는 키워드(keyword)
  • { } → 코드 블록의 시작과 끝을 나타내는 구분자(delimiter), 즉 특수 기호
  • a, b, c → 값을 저장하는 변수(variable)이자 사용자 정의 식별자

이처럼 프로그램을 구성하는 모든 요소들이 개별적인 토큰으로 분리되며, 이 토큰들이 모여 하나의 완전한 C 프로그램이 됩니다.