C 언어 '##' 연산자 의미

C 언어에서 몰랐던 점.


## 이 무엇인지..


macro 에서 글자를 대용할 때 사용한다.


사용 예

#define a(x,y)  x##y


뭐 이런 define 이 있다면 전처리기에 의해

 

a(x,y) -> x##y -> xy


로 대치 된다.


이런 것을 왜 사용하느냐?


1. 각 플랫폼의 layer 에 해당하는 역할을 만들기 위해..( 이부분은 심도 있는 이해가 필요)

2. 코드를 숨기기 위해(복잡하게 찾아가야 함.)

3. 때로는 여러가지 설정을 위해 저런 macro 가 약간의 편리함을 주기도 한다.


근데.. 난 너무 불펴하게 느껴지기만 할 뿐..

댓글

Designed by JB FACTORY