2학년 2학기/c언어

14-1장 전처리기와 단순 매크로

kkkkk1023 2024. 12. 2. 10:02

전처리기란?

: # 기호로 시작하는데, 컴퓨터 처리에 있어서 중심적인 처리를 수행하는 부분을 위해 사전 준비적인 계산을 진행하는 것이다.

 

 

 

 

 

전처리기의 종류

 

 

 


 

 

단순 매크로

: 변수처럼 어떠한 값을 특정 단어로 대체하는 것을 의미한다. 즉, 아래와 같이 3.141592를 PI라는 단어로 치환하는 것이다.

 

 

 

 

💡  #define과 typedef의 차이점

 

[define]

: unsigned char를 uchar로 치환하는 것

// define

#define uchar unsigned char

 

 

[typedef]

: unsigned char를 UCHAR로 치환하는 것

// typedef

typeof unsigned char UCHAR

 

 

 

서로 같은 기능을 하지만 차이점도 있다.

 

1. 처리하는 것이 다르다.

: typedef는 컴파일러에 의해서 처리되지만, #define은 전처리기에 의하여 처리된다.

 

2. 기계적인 치환과 그렇지 않은 치환

: #define은 기계적인 텍스트 치환이다. 하지만 typedef는 사용자가 새로운 자료형을 자료형을 정의한 것으로 컴파일러가 컴파일 내내 그의미를 알고 있다.

 

 

따라서, 새로운 자료형을 정의할 때는 typedef를 사용하는 편이 좋다.