#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
Posted by 쵸코케키

블로그 이미지
chocokeki
쵸코케키

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

최근에 올라온 글

최근에 달린 댓글

글 보관함