더북(TheBook)

우선 #define 매크로를 어떻게 사용하는지 알아볼까요? #define은 컴파일 전에 수행되는 전처리기(선행 처리기, preprocessing ) 단계에서 기호 상수를 리터럴로 치환함으로써 수행됩니다. 무슨 의미인지 코드를 보면서 설명하겠습니다.

#define PI 3.14
 
main() {
    float result, result2;
    result = PI * 2.7;
    result2 = PI * 2.7 * 2.7;
}

사람이 작성한 코드를 컴퓨터가 바로 해석하는 것이 아닙니다. 해석하기 전에 컴퓨터가 먼저 코드를 처리하는 과정을 한번 거칩니다. 이러한 선행 처리 과정을 거친 후 결과로 나온 코드를 컴퓨터는 컴파일합니다.

이 코드를 선행 처리하면 다음과 같은 임시 파일이 생성됩니다.

main() {
    float result, result2;
    result = 3.14 * 2.7;
    result2 = 3.14 * 2.7 * 2.7;
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.