C 언어에서 토큰: 초보자 가이드
안녕하세요, 야심 찬 프로그래머 여러분! 오늘 우리는 C 프로그래밍의 세계로 흥미로운 여정을 떠납니다. 여러분의 친절한 이웃 컴퓨터 선생님이자 저는 C 언어의 토큰에 대해 안내해드리려 합니다. 만약 코드를 한 줄도 작성해보지 않았다면 걱정하지 마세요 - 우리는 매우 기본적인 것부터 시작하여 차례대로 진행할 것입니다. 그러니 커피 한 잔 (또는 여러분의 좋아하는 음료)을 들고, 같이 들어보세요!
C 언어에서 토큰이란?
구체적인 내용에 들어가기 전에 토큰이 무엇인지 이해해보겠습니다. C 프로그래밍에서 토큰은 프로그램의 가장 작은 개별 단위입니다. 코드의 건축 블록이라고 생각하면 됩니다 - 문장을 구성하는 단어처럼, 토큰이 C 프로그램을 구성합니다.
이제 C 언어에서 다양한 유형의 토큰을 탐구해보겠습니다.
C 문자셋
C 문자셋은 C 언어의 알파벳과 같습니다. 다음을 포함합니다:
- 소문자 (a-z)
- 대문자 (A-Z)
- 숫자 (0-9)
- 특수 문자 (예: +, -, *, / 등)
- 공백 문자 (스페이스, 탭, 개행 문자 등)
이 문자들은 여러분이 작성할 모든 C 프로그램의 기초가 됩니다. 간단한 예를 보겠습니다:
#include <stdio.h>
int main() {
printf("Hello, World!");
return 0;
}
이 전형적인 "Hello, World!" 프로그램에서는 C 문자셋의 여러 문자를 활용할 수 있습니다.
C 키워드
키워드는 C에서 사전 정의된 의미를 가진 특별한 단어입니다. 언어의 비서와 같은 존재입니다 - 그들의 예정된 목적 이외의 용도로 사용할 수 없습니다. 다음은 일반적인 C 키워드의 표입니다:
키워드 | 설명 |
---|---|
int | 정수 데이터 타입 |
float | 부동소수점 데이터 타입 |
if | 조건문에 사용 |
else | if와 함께 대체 실행에 사용 |
while | 반복문에 사용 |
return | 함수에서 값을 반환 |
키워드를 어떻게 사용할 수 있는지 보겠습니다:
int main() {
int age = 25;
if (age >= 18) {
printf("You're an adult!");
} else {
printf("You're a minor.");
}
return 0;
}
이 예제에서는 int
, if
, else
, return
키워드를 사용하고 있습니다. 각각은 프로그램의 논리에서 중요한 역할을 합니다.
C 리터럴
리터럴은 고정된 값을 가진 데이터 항목입니다. 수학 식의 상수와 같은 것입니다. C는 다음과 같은 리터럴을 지원합니다:
- 정수 리터럴 (예: 10, -5, 0)
- 부동소수점 리터럴 (예: 3.14, -0.5)
- 문자 리터럴 (예: 'A', '7', '$')
- 문자열 리터럴 (예: "Hello, World!")
다양한 유형의 리터럴을 사용하는 예제를 보겠습니다:
int main() {
int count = 10;
float pi = 3.14159;
char grade = 'A';
printf("There are %d apples. Pi is approximately %.2f. I got an %c in math!", count, pi, grade);
return 0;
}
이 프로그램은 정수, 부동소수점, 문자 리터럴의 사용을 보여줍니다.
C 식별자
식별자는 변수, 함수, 배열 등과 같은 엔티티에 부여된 이름입니다. 프로그램의 nametag와 같은 것입니다. 식별자를 생성하는 규칙은 다음과 같습니다:
- 문자, 숫자, 밑줄을 포함할 수 있습니다
- 문자나 밑줄로 시작해야 합니다
- 대소문자를 구분합니다
- 키워드일 수 없습니다
유효한 식별자와 무效한 식별자를 보겠습니다:
int main() {
int validIdentifier = 10;
int _also_valid = 20;
int 123invalid = 30; // 이는 무效합니다!
int float = 40; // 이는 무效합니다. float는 키워드입니다!
return 0;
}
C 연산자
연산자는 컴파일러에 특정 수학적이나 논리적 연산을 수행하도록 지시하는 기호입니다. 프로그래밍 언어의 동사와 같은 것입니다. 다음은 일반적인 C 연산자의 표입니다:
연산자 | 설명 |
---|---|
+ | 덧셈 |
- | 뺄셈 |
* | 곱셈 |
/ | 나눗셈 |
% | 나머지 (余수) |
== | 같다 |
!= | 다르다 |
> | 크다 |
< | 작다 |
이 연산자들을 활용하는 예제를 보겠습니다:
int main() {
int a = 10, b = 3;
printf("Addition: %d\n", a + b);
printf("Subtraction: %d\n", a - b);
printf("Multiplication: %d\n", a * b);
printf("Division: %d\n", a / b);
printf("Modulus: %d\n", a % b);
printf("Is a equal to b? %d\n", a == b);
printf("Is a not equal to b? %d\n", a != b);
printf("Is a greater than b? %d\n", a > b);
printf("Is a less than b? %d\n", a < b);
return 0;
}
이 프로그램은 다양한 산술 및 비교 연산자를 보여줍니다.
C 특수 기호
특수 기호는 C에서 특별한 의미를 가진 문자입니다. 언어의 문장 부호와 같은 것입니다. 다음은 몇 가지 예입니다:
- [] (정사각형 괄호) - 배열 인덱싱에 사용
- {} (곡사각형 괄호) - 문장을 그룹화하는 데 사용
- () (圓形 괄호) - 함수 호출과 표현式中에 사용
- ; (세미콜론) - 문장을 종료하는 데 사용
-
(해시) - 프리프로세서 디렉티브에 사용
이 특수 기호들을 사용하는 예제를 보겠습니다:
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int main() {
int numbers[] = {1, 2, 3, 4, 5};
int sum = add(numbers[0], numbers[4]);
printf("The sum is: %d", sum);
return 0;
}
이 예제에서는 정사각형 괄호를 배열 인덱싱에, 곡사각형 괄호를 함수 본문 정의에, 圓形 괄호를 함수 호출에, 세미콜론을 문장 종료에, 해시를 포함 디렉티브에 사용하고 있습니다.
이제 여러분은 C 언어의 주요 토큰을 다루었습니다. 기억하세요, 이 토큰들은 여러분이 작성할 모든 C 프로그램의 건축 블록입니다. 프로그래밍 여정을 계속하면서 이 토큰들에 익숙해질 것이며, 사용하는 것이 자연스러워질 것입니다.
프로그래밍은 새로운 언어를 배우는 것과 같습니다 - 시간과 연습이 필요합니다. 바로 이해가 되지 않는다면 낙담하지 마세요. 계속 코딩하고, 실험하고, 가장 중요한 것은 즐겁게 만들어보세요!
미래의 프로그래머 여러분, 행복하게 코딩하세요!
Credits: Image by storyset