살아가는 이야기

printf의 출력 폭 지정 본문

컴퓨터, 풀어그림

printf의 출력 폭 지정

우균 2017. 1. 10. 11:25

C의 라이브러리 함수 printf에는 출력 폭을 지정하는 기능이 있다. %d가 그냥 십진수로 출력하는 것이라면 %5d는 5칸 내에 우측 정렬하여 십진수로 출력한다. 

그런데 동적으로 출력폭을 지정하는 기능도 있다. 그것은 바로 별표 *이다. 출력폭을 별표로 지정하고 인수로 해당 출력폭을 주면 그 출력폭에 맞게 출력해 준다. 예컨대 다음 프로그램은 포물선을 따라 1부터 7까지 출력해 준다.

#include <stdio.h>

int main()
{
    int width = 1, i = 1;

    for (i = 1; i < 8; width *= 2, i++)
        printf("%*d\n", width, i);

    return 0;
}

사실 이 글을 전에 적은 줄 알았는데, 아무리 검색해도 나오지 않는다. 이건 건망증도 아주 이상한 건망증이다.

Comments