summation3.c
#include <stdio.h>
#include "debug.h"
// summation() 함수의 프로토타입 선언
int summation(int from, int to);
int main(int argc, char* args[])
{
int num, result;
DLOG("프로그램 시작\n");
printf("1부터 n까지의 합을 계산합니다.\n");
printf("n을 입력하세요: ");
scanf("%d", &num);
printf("결과: %d\n", summation(1, num));
return 0;
}
// summation() 함수의 정의
int summation(int from, int to)
{
int i, sum = 0;
DLOG("from: %d, to: %d\n", from, to);
for (i = from ; i <= to ; i++) {
sum += i;
DLOG("sum: %d\n", sum);
}
DLOG("sum: %d\n", sum);
return sum;
}
debug.h
#include <stdio.h>
#ifdef DEBUG
#define DLOG(fmt, args...) fprintf(stderr, fmt, ##args) //##args는 args...에서 입력 받은 가변 인자 리스트를 그대로 치환하라는 의미이다
#else
#define DLOG(fmt, args...)
#endif /* DEBUG */
---------------------------------------------------
Result
gcc -DDEBUG summation3.c // D 옵션은 매크로를 정의해 주기위한 옵션
DEBUG가 정의되어 있지 않으면 아무런 일도 하지않음
'EMBEDDED > SYSTEM Proc' 카테고리의 다른 글
[Library] Library 만들기 (0) | 2012.07.13 |
---|---|
[Gcc] 관련 메뉴얼 (0) | 2012.07.13 |
[Normal] 비트필드 예제 (0) | 2012.07.13 |
[Normal] 가변 인자를 사용하는 예제 (0) | 2012.07.13 |
[Network] 일대일 채팅 프로그램 (1) | 2012.07.13 |