setw()
이 글은 제 개인적인 공부를 위해 작성한 글입니다.
틀린 내용이 있을 수 있고, 피드백은 환영합니다.
개요
#include<iomanip>
에 포함되어 있다.
출력하는 데이터의 칸을 지정한 수만큼 정렬 시켜주는 편리한 함수이다.
사용법
1
2
cout << setw(3) << 1 << '\n';
// ' 1' 출력
setw(n)
이후에 출력하는 데이터의 너비를 n
으로 정렬해준다.
즉, n
만큼의 너비를 확보하고, 데이터를 오른쪽 칸부터 채워넣게 해준다.
1
2
cout << left << setw(3) << 1 << "#" << '\n';
// '1 #' 출력
만약 데이터를 왼쪽부터 출력하고 싶으면, left
를 사용하면 된다. (right
도 있다.)
이 설정은 sticky하므로 이후에 쓰는 setw
에 모두 적용된다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
const int N = 100;
const int K = 3;
for (int i = 1; i <= N; i *= 10)
cout << setw(K) << i << '\n';
for (int i = 1; i <= N; i *= 10)
cout << left << setw(K) << i << "#" << '\n';
for (int i = 1; i <= N; i *= 10)
cout << setw(K) << i << "#" << '\n';
for (int i = 1; i <= N; i *= 10)
cout << right << setw(K) << i << '\n';
/*
출력
1
10
100
1 #
10 #
100#
1 #
10 #
100#
1
10
100
*/
참고
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.