[질문]%-.*s 는 정확히 어떨때 쓰는 것일까요.

dux의 이미지

얼마전에 %*d를 어떻게 쓰는 것인지를 이 게시판에서 본 적이 있습니다.
그런데 이번에 %-.*s를 보게 되었는데 %-.*s와 %s를 쓰는 것에 특별히 차이를 알 수가 없습니다.
어떤 차이가 있을까요 :?:

세벌의 이미지

right or left adjustment

dreampia의 이미지

자리수 지정하는 겁니다.
%s의 경우 string은 전부 다 출력하게 하지만 %.Xs는 X만큼만 출력하게 합니다.

간단하게

int main(int argc, char *argv[])
{
    char *buf = "123456789";

    printf("%-.*s\n", 6, buf);
    printf("%*.*s\n", 12, 12, buf);
    exit(0);
}

[17:05:04 temp] a
123456
   123456789
[17:05:04 temp]

와 같은 결과가 나옵니다.

>/dev/null 2>&1