-
[C Language] 2. 매크로 변수(Macro Variable) - C 언어CSE/C Language 2015. 6. 13. 10:001. #define- #include는 일단 추가해주면 시스템이 알아서 처리하기 때문에 특별한 지시없이 사용가능함.- #define은 명확히 이해하지 않으면 뜻하지 않은 에러를 발생함.'매크로 변수의 유용성'아래 예제 코드에서 100이라는 수치가 변경되어, 150으로 수정해야 한다. 아래 예제에선 일부분이므로 손 쉽게 수정가능하지만, 몇 백 라인에 해당하게 되면, 일일이 바꾸기 어렵다.12345678910111213141516/* * nomacro.c ** Created on: 2015. 5. 11.* Author: root */#include <stdio.h>int main(void) {printf("%d\n", 5 * 100);printf("%d\n", 3 * 100);printf("%d\n", 5 / 100);printf("%d\n", 7 * 100);printf("%d\n", 5 + 100);return 0;}
cs 위 예제에서의 문제점을 매크로 변수를 이용하여 작성한 예제를 살펴보자. 100의 값을 150으로 수정할 필요가 있을 경우, 전처리기 SIZE만 수정해주면 된다.1234567891011121314151617181920212223/** usingmacro.c** Created on: 2015. 5. 11.* Author: root*/#include <stdio.h>#define SIZE 100int main(void) {printf("%d\n", 5 * SIZE);printf("%d\n", 3 * SIZE);printf("%d\n", 5 / SIZE);printf("%d\n", 7 * SIZE);printf("%d\n", 5 + SIZE);return 0;}cs '매크로 변수'#define SIZE 100
#define : 매크로 지시자SIZE : 매크로 변수(중간에 공백이 삽입되면 안 됨)100 : 매크로 변수 값* Programming in C 서적을 참고하여 작성하였습니다.
'CSE > C Language' 카테고리의 다른 글
[C Language] 7. 대입 연산자(Assign operator) - C 언어 (0) 2015.06.13 [C Language] 6. 연산자 개요(Introduction to operator) - C 언어 (0) 2015.06.13 [C Language] 5. 입출력 함수(I/O Function) - C 언어 (0) 2015.06.13 [C Language] 4. 내장 매크로(Nested Macro) - C 언어 (0) 2015.06.13 [C Language] 3. 매크로 함수(Macro function) - C 언어 (0) 2015.06.13 [C Language] 1. 전처리기(Pre-processor) - C 언어 (0) 2015.06.13