마지막으로, 전체 디지털 시계를 실행시키는 Main.c 을 분석해 보겠습니다.


[Main.c]

#include "DigitalClock.h"
#include "Util.h"

static void _InitDigitalClockSetting();

int main(){
	_InitDigitalClockSetting();
	while (TRUE){
		DigitalClock_Print(DigitalClock_GetTime());
	}
	return 0;
}

static void _InitDigitalClockSetting(){
	WindowUtil_ChangeWindowSize(WINDOW_LINE_SIZE, WINDOW_COL_SIZE);
	FontUtil_ChangeFontColor(LIGHT_GREEN);
	CursorUtil_Hide();
}


1 ~ 2 라

Main.c 에서 사용될 함수나 변수를 위한 헤더파일 include 문입니다.


4 라인

Main 함수에서 사용하는 내부 함수 선언문입니다.


7 라인

_InitDigitalClockSetting 함수를 호출하여 디지털 시계에 관련된 환경설정을 합니다.


8 ~ 10 라인

무한 루프를 돌면서, DigitalClock_GetTime 을 통해 현재 시각을 가져오고, 그 가져온 값을 매개변수로 넘기면서 DigitalClock_Print 를 호출하여 화면에 출력합니다. DigitalClock_Print 함수 내부에서 Sleep 함수를 호출하며 1 초를 세고 있습니다.


14 라인

_InitDigitalClockSetting 함수의 정의부입니다. 디지털 시계 프로그램을 실행하기 전 설정 작업을 합니다.


15 라인

콘솔창 크기를 디지털 시계에 적당하게 설정합니다.

(콘솔 창 크기 변경하기 참고)

http://kkikkodev.tistory.com/28


16 라인

글자색을 연한 초록색으로 변경합니다.

(콘솔 글자 색 변경하기 참고)

http://kkikkodev.tistory.com/29


17 라인

커서를 숨깁니다.

(콘솔 커서 숨기기 & 두께 조절하기 참고)

http://kkikkodev.tistory.com/27




실제로, 개발 진행과정도 Util -> DigitalClock -> Main 순서였기 때문에, 소스코드 설명 또한 같은 순서로 진행해왔습니다.

by kkikkodev 2015. 4. 11. 12:50