티스토리 뷰
%[정렬] [최소크기] [.최대크기] [{h | l | ll | I | I32 | I64}]type
형식은 위와 같습니다.
[정렬]
는 +,-,0,공백,# 등이 올 수 있는데요..보통 +,-를 많이 사용합니다..
'+'는 오른쪽 정렬, '-'는 왼쪽 정렬입니다.
지정안하면 +로 되는걸루 알고 있습니다.
[최소크기]
최소 크기라고 보시면 됩니다...
그러니까.. 문자열 "1234"를 출력하는데. [width]가 5로 지정되어 있으면
위의 [flag] 지정에 따라서 왼쪽 혹은 오른쪽에 공백이 하나 자동으로 생깁니다...
[.최대크기]
최대 크기라고 보시면 되는데요..
문자열 "123456789123"을 출력하는데 [.최대크기]가 5로 지정되어 있으면.
12345 라고 출력되고 뒤에것은 짤리지요...
그러면 님께서 올리신 예제를 풀어 볼 수 있겠군요..
1) %5.5s
printf ( "%5.5s", "1234567890");
이런식으로 출력하면 [정렬]은 지정이 안되어 있으니까..자동으로 +가 되겠죠..
12345 라고 화면에 출력되겠군요...
2) %-5.5s
printf ( "%-5.5s", "123");
이런식으로 출력하면 [정렬]은 '-' 이고 최소값이 5, 최대값이 5니까..
왼쪽으로 정렬이 되면서.
123__
(_는 공백 입니다. )
위와 같은 결과가 출력됩니다.
3) %.5s
printf ( "%.5s", "1234567890");
이런식으로 출력하면 [정렬]은 생략이니까 +가 되고 최소값은 없고 최대값이 5니까..
12345 라고 화면에 출력됩니다... 최대값이 5니까요 짤리지요...
4) %0.4f
printf ( "%0.4f", 12345.6781111);
실수는 문자열과 약간 다른데요...
실수는 최소값은 소수점을 포함한 전체길이가 되고.
최대값은 소수점의 길이로 해석이 되어 집니다..
이런식으로 출력하면 [정렬]은 생략이니까 +가 되고 최소값은 0, 최대값이 4니까..
12345.6781 이렇게 출력됩니다..
5) %.4f
printf ( "%.4f", 12345.6781111);
%0.4f와 같은 결과가 됩니다...
6) %3.4f
printf ( "%3.4f", 12345.6781111);
이런식으로 출력하면 [정렬]은 생략이니까 +가 되고 최소값은 3, 최대값이 4니까..
12345.6781 이렇게 출력됩니다..
printf ( "%3.4f", 1.1);
만약 위와 같이 한다면..
1.1000 이렇게 나오겠죠...
근데 %3.4f 같은 경우는 컴파일러마다 약간씩 차이가 있더군요...
출처 : http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=73694954&qb=c3ByaW50Zl9z&enc=utf8§ion=kin&rank=2&search_sort=0&spq=0&pid=gNHA1g331xNssauFN8Vssv--511378&sid=Tc5i1V9Fzk0AAFCnRnI
'프로그래밍 > 잡탕' 카테고리의 다른 글
release (delete this)에 대한 고찰 (1) | 2012.01.14 |
---|---|
Social Software System (0) | 2011.07.06 |
윈도우 스타일(WS) (0) | 2011.03.30 |
WIN32 프로그램에서 콘솔 창을 같이 띄우기 - 아직 수정할 것 남음 (0) | 2011.03.30 |
LPCWSTR 관련글(DXFont를 이용하다가) (0) | 2011.03.25 |
- Total
- Today
- Yesterday