Programming Language/C언어

[C언어] 토큰(Token)이란?

lxvxxu 2025. 4. 12. 13:48

C언어에서 Toekn이란? 

C Program을 구성하는 최소 단위를 말한다.

Toeken은 일반적으로 데이터 처리 과정에서 문자열을 더 관리하기 쉽고 의미 있는 부분으로 나누기 위해 사용된다.


여기에서 Token은 6가지로 나뉜다.

 

1. 키워드 (예약어)

2. 식별자

3. 상수

4. 문자열 리터럴

5. 연산자

6. 구두점

 

No. 이름 설명
1 키워드 이미 특별한 의미가 정해진 단어
2 식별자 Programmer가 의미를 정한 단어
3 상수 Program이 실행되는 동안 변하지 않는 값
4 문자열 레터럴 문자열 상수
5 연산자 연산에 사용되는 기호 문자
6 구두점 의미를 강조하는 기호 문자

 

 

 


1. 키워드 (Keyword, 예약어)

Compiler에 의해서 이미 의미가 정해져 있는 단어

이름 설명 종류
기억분류 변수의 생존기간 auto, extern, register, static
제어문장 일의 진행 순서 if, else, switch, case, break, default, continue, for, do, while, goto, return
자료형 변수의 범위 char, short, int, long, float, double, signed, unsigned, void, union, enum, struct, typedef
그 외 const, volatile sizeof

 

 

2. 식별자

Programmer가 의미를 정한 단어

i.e., 변수 명칭, 상수 명칭, 함수 명칭 등

 

※ 식별자를 만들 때 주의할 사항
   1) Keyword를 식별자로 사용할 수 없다.
   2) 식별자의 첫 번째 문자는 영어 or '_'여야 한다.
   3) 식별자는 용도에 맞게 의미 있게 부여하는 게 좋다. (가독성 ↑)

 

 

3. 상수

4. 문자열 레터럴

큰따옴표(" ") 안에 작성되는 Text, 문장려 상수

 

5. 연산자

연산에 사용되는 기호문자

- 산술연산자: +, -, *, /

- 비교연산자: 크기를 비교

- 논리연산자, 비트연산자, 3항 연산자 등

 

6. 구두점

의미를 강조하는 기호문자

No. 구두점  
1 [] 배열
2 () 조건식, 함수, 포인터
3 {} 제어 블록, 배열의 초기화, 태그형 틀
4 * 포인터
5 , 순차를 강조하는 쉼표 연산자
6 ; 문장의 끝
7 = 변수나 배열의 초기화
8 : goto.case의 레이블
9 ... 생략 부호
10 # 전처리기 지시자

 

 


Token 활용 예시1 (기초)

C언어에서 strtok 함수를 사용하여 문자열을 Token으로 나누는 예시를 들어볼 수 있다.

strtok 함수는 문자열에서 지정된 구분자를 기준으로 Token을 추출한다. 

 

예를 들면, 아래와 같은 문자열이 있을 때

char str[] = "Hello, World! Welcome to C Programming.";

 

이 문자열을 공백(' ')을 구분자로 사용해 Token으로 나누면 각 단어 "Hello,", "wrold!", "Welcome", "to", "C", "Programming." 각각이 Token이 된다.

 

Token 활용 예시2 (심화)

문자열 배열 s에서 z 앞 숫자는 빼고 나머지 숫자만 더해서 출력하는 코드를 작성하라

(by Programmers)


참고 자료글
 https://blog.naver.com/dd1587/220962644607

https://jaeyulove.tistory.com/83