printf문 설명좀.. ㅡㅡ;

익명 사용자의 이미지

ulen = 13 일때,

if ( ulen < 16 )
printf( "%*s", (16-ulen)*3, " " );

는 어떤식으로 나올까요.. ㅡㅡ;

어렵다.. ㅡㅡ;

익명 사용자의 이미지

서지훈 wrote..
ulen = 13 일때,

if ( ulen < 16 )
printf( "%*s", (16-ulen)*3, " " );

는 어떤식으로 나올까요.. ㅡㅡ;

어렵다.. ㅡㅡ;

제가 직접 해 보니까
_________이 나오는 거 같군요 (_ = 빈칸)
즉, (16 - 13) * 3 = 9개의 빈 칸 말입니다.
만약 맨 마지막 인자가 어떤 문자열(ex. abcde)라면
____abcde 이런 식으로 나오는 거 같구요.

오병현 octphial@postech.ac.kr

익명 사용자의 이미지

man printf 하니까 format string에 대한 설명에 이렇게 쓰여 있군요.

A field width or precision may be '*' instead of a digit string.
In this case an argument supplies the filed width or precision

영역의 너비나 정밀도는, 숫자 문자열 대신에 '*'일 수 있다.
이러한 경우에 인자에서 영역의 너비나 정밀도가 주어진다.

오병현 octphial@postech.ac.kr