[C/C++ Tip] 2. #define의 목적


[C/C++ Tip] 2. #define의 목적

#define은 왜 사용하는 걸까? 단순히 상수 처리하기 위해 define을 사용하는 것일까?

이를 알기 위해선 소스 코드의 변환 과정을 알 필요가 있다. Build의 순서는 아래와 같다. exe 파일 생성 : 소스코드 -> 전처리 -> 컴파일 -> 링크 -> 실행 mcu 헥사 파일 생성 : 소스코드 -> 전처리 -> 컴파일 -> 어셈블리어 변환 -> 헥사 파일 생성 -> MCU 다운로드 C언어를 처음 공부할 때, #define을 사용하지 않으면 전처리 과정을 거치지 않는다고 생각한 적이 있다.

#으로 시작하는 문장은 전부 전처리기 지시자임에도 #include는 전처리기라고 생각하지 않았다. 항상 C언어를 실습할 때, 의무적으로 #inlcude 를 작성한 폐해이다.

전처리란 무엇인가? 컴파일 전에 처리되는 하는 작업이고 전처리를 수행하는 장치를 전처리기라고 한다.

전처리기는 헤더 파일을 불러오거나, 소스 파일 내부의 특정 문자열을 상수 또는 문자로 치환하거나, 조건에...


#CPP #C언어 #define #define은 #define을 #include는 #inlcude #Tip #으로

원문링크 : [C/C++ Tip] 2. #define의 목적