C 프로그래밍에서 보면 가끔씩 이상한 문법들이 있다.
그 중에서 #, ## 같은 define 들이 있는데 이를 잘 사용하면 프로그램이 짧아지게 된다.
#은 Stringizing Operator 로 메크로 인자를 문자로 만들어 준다.
따라서 paster(9)가 불리면 n은 9가 되고
위의 예에서 #n 은 메크로에서 받은 n을 문자로 만들어 준다.
따라서 printf("Token " "9" " = %d\n", token ## n) 으로 변경되었다.
##은 앞뒤 를 연결시켜주는 Token Pasting Operator 이다.
따라서 prinff("Token " "9" " = %d\n", token9) 가 된다.
그 중에서 #, ## 같은 define 들이 있는데 이를 잘 사용하면 프로그램이 짧아지게 된다.
#은 Stringizing Operator 로 메크로 인자를 문자로 만들어 준다.
따라서 paster(9)가 불리면 n은 9가 되고
위의 예에서 #n 은 메크로에서 받은 n을 문자로 만들어 준다.
따라서 printf("Token " "9" " = %d\n", token ## n) 으로 변경되었다.
##은 앞뒤 를 연결시켜주는 Token Pasting Operator 이다.
따라서 prinff("Token " "9" " = %d\n", token9) 가 된다.