2012. 7. 15. 13:20 devel/man & example
#define function macro
#define SQUARE(X) ((X)*(X))
괄호를 마구 치는 이유
-> #define sq(x) (x)*(x) 라고 가정하면
int num = 120 / sq(2)
-> 120 / 2 * 2
연산자 우선 순위에 의하여 차례로 들어간다
그런고로 120이 num에 저장된다
크기가 작은 함수, 그리고 호출의 빈도수가 매우 높은 함수를 macro로 정의하는 것이 좋다고 한다
출처 : 윤성우의 열혈 C 프로그래밍
'devel > man & example' 카테고리의 다른 글
ioctl (0) | 2012.07.26 |
---|---|
const (0) | 2012.07.21 |
#define 문자열 치환 및 합치기 (0) | 2012.07.15 |
strstr (0) | 2012.01.28 |
arm inline assembly (0) | 2011.12.24 |