00 개요
- 목적: #와 ##가 C 언어로 작성된 파일에서 어떤 기능을 갖고 있는지 정리하고자 함
- C 언어 전처리기(preprocessor)는 코드 컴파일 전에 미리 처리하는 단계로, #define 지시문을 통해 매크로를 정의할 수 있음
- C 언어의 #define 지시문 안에서 사용되는 매크로의 # 및 ## 연산자에 대한 내용
01 # 연산
1. 정의
- 치환(substitute)의 역할을 함
2. 예시
#include <stdio.h>
#define STRING_NAME(A, B) #A "의 나이는 " #B "세입니다."
main() {
printf(STRING_NAME(저, 100));
}
02 ## 연산
1. 정의
- 결합(combine)의 역할을 함
2. 예시
#include <stdio.h>
#define CONCAT(a, b) a ## b
main() {
int num1 = 10, num2 = 20;
int result = CONCAT(num, 1) + CONCAT(num, 2);
printf("결과: %d\n", result);
}
참조
'C' 카테고리의 다른 글
매크로 함수, 인라인 함수(#define, #inline) (0) | 2024.06.25 |
---|---|
Macro (매크로) (0) | 2024.06.25 |
자료형 종류 (C 언어) (0) | 2024.06.24 |
Local vs Global Variable (지역 vs 전역 + static 변수) (0) | 2024.06.24 |
extern와 static (키워드) (0) | 2024.06.24 |