사용자 도구

사이트 도구

English

moacon:printf:index

printf

printf 는 C 언의 대표적인 표준 출력 라이브러리 함수입니다. 모아콘에서는 디버그용도로 사용합니다. Printf 실행결과는 모아콘스튜디오의 디버그창에 표시됩니다.

printf 단순하게 “ ”로 둘러쌓인 문자열을 출력할수도 있고, 어떠한 수치를 일정한 포맷으로 바꾸어 출력할 수도 있습니다.

포맷 문자열은 %로 시작되는데, 변수 a 의 값을 10 진으로 표시하려면 다음과 같이 하면 됩니다.

printf(“a = %d”, a);

여러 개의 포맷문자열을 포함하고 있는 경우에는 뒤에 나열된 변수(또는 상수)가 차례대로 적용됩니다.

여기에서 %d 가 10 진 출력을 위한 포맷 문자열입니다. 이외에도 다음 표와 같이 여러가지 포맷 문자열이 있습니다.

%4d 와 같이 %와 d 사이에 숫자를 넣으면, 출력 칸수를 지정할 수도 있습니다. 맨앞에 0 을 붙이면 남는 공백을 0 으로 채웁니다. 다음은 printf 사용예입니다.

int x=345;
float y=34.564;
printf("%10d₩r₩n",x);      /*x 를 10 자리에 맞추어 출력한다. */
printf("%-10d₩r₩n",x);     /*x 를 10 자리에 맞추어 출력하고 출력방향을 왼쪽에 맞춘다. */
printf("%010d₩r₩n",x);     /*x 를 10 자리에 맞추어 출력하고 남는 공백을 0 으로 채운다. */
printf("%.2f₩r₩n",y);      /*y 를 소수점 이하 2 자리로 출력한다. */

%다음에 –를 넣으면 왼쪽 자리맞춤으로 표시됩니다. 주로 출력칸수와 함께 사용합니다. %-10d (정수 d 가 1989 일경우) 결과는 1989bbbbbb (공백을 b 로 표시)가 됩니다. *실수표시를 위한 %e 와 %f 의 경우, 전체자릿수 제한 표시가 적용되지 않습니다. (%10f 로 해도 전체 표시자릿수를 10 자리로 제한할 수 없습니다. 소수값 그 자체가 표시됩니다. 단 %.2f 와 같이 소수점 아래로 표시제한은 할 수 있습니다. ) 위에 나열한 포맷문자열은 기타 다른 print 함수에서도 사용가능합니다. (clcdPrint, comPrint, netPrint, csgPrint 등)

 while(1) {
     clcdPrint(1,0,"%d",i++);
     clcdPrint(1,1,"%.2f",j = j * 1.23);
     clcdPrint(3,2,"%6X",i);
     clcdPrint(4,3,"Technology");
     clcdPrint(10,0,"%2x %2x",rtcRead(0),rtcRead(1));
     delay(200);
 } 

Debug 터미널

MOACON 에서는 기본적인 디버깅 방법으로 디버그 터미널을 사용합니다. 즉, 프로그램 실행중 변수값의 변화상태를 디버그터미널에 표시하는 방법으로 디버깅을 수행합니다.

소스프로그램중 printf 함수를 삽입하면, 실행 결과는 MOACON STUDIO 에 있는 디버그 터미널에 표시됩니다.

디버그 터미널을 콘트롤하기 위한 추가적인 함수도 있습니다.

debugCls( );                  // 디버그 터미널을 클리어합니다.
debugLocate( x, y );          // 표시위치를 지정합니다.(x, y 는 0 부터 시작)
debugPut(ch);                 // 디버그 터미널로 1 바이트(ch)를 전송합니다.

라이브러리 목록으로 가기

moacon/printf/index.txt · 마지막으로 수정됨: 2020/02/23 14:03 저자 Comfile Technology