사실 포스팅할까 망설였던 이주제...
게임 클라이언트 프로그래머를 지망하다보니 게임 엔진을 통해 개발할때 커스텀 로그 및 엔진 제공 로그등으로 입출력을 확인했었기에,
조정자를 막 프로그래밍을 입문했을 시점에 뭔가 특별한 입출력 지원 기능이 없을까 해서 찾다보니 알게되었다.
먼저 Output Formatting이 무엇인지 알아보자.
Output Formatting : 출력 형식(서식) 지정
출력 형식을 지정해 원하는 값을 도출해보자는 말그대로의 뜻을 가지고 있다.
예를 들어 실수를 출력하고자 하는데 뒤에 소숫점을 몇자리까지 보여줄건지,
정렬을 하고 싶은데 Column 사이즈를 몇씩 할건지 등등 여러가지 최종 출력 형식을 조정해 좀더 원하는 출력으로 이끌어 낼 수 있다.
자 Output Formatting에 대해 자세하게 들어가기 전에 많은 Output Formatting은 Manipulator을 통해 이루어지기에 먼저 그를 알아보고 가자.
Manipulator : 조정자
C++에서 조정자를 사용하기 위해서는 전처리기로 iomanip을 추가해주어야한다.
1. showpos / noshowpos
필자는 일단 함수를 보던 변수를 보던 네이밍을 보고 먼저 생각해보는 타입이다.
아마 대부분의 프로그래머가 그렇겠지만, 그렇지 않다면 가져야할 필수 소양이라고 생각한다. 물론 이해가 가지 않을땐 일단 써보면서 깨달아도 좋다.
showpos? / noshowpos?
pos를 보여달라? / pos를 보여주지말라 로 해석되는데, 해석과 일치한 역할을 가지고 있는 조정자이다.
pos는 positive number를 줄여 말한 것이며, showpos는 양수임을 표현할때, noshowpos는 평소나 다름없게 출력한다.
직접 한번 확인해보겠다.
2. oct/dec/hex (8진수, 10진수, 16진수)
숫자를 8진수, 10진수, 16진수로 출력해준다.
일반적으로 10진수에 익숙한 우리가 8진수나 16진수를 출력하고자 할때,
사용하기 좋다. 8진수나 16진수가 무엇이더라? 헷갈리시는 분들은...
수의 체계중 진수를 찾아보길 바란다.
'Programming > C, C++' 카테고리의 다른 글
C++ push_back, emplace_back in std::vector (0) | 2019.12.04 |
---|---|
02. C++ namespace (0) | 2019.10.28 |
01. C/C++ Input, Output 입출력 (0) | 2019.10.28 |