이 글에서는 컴퓨터 화면과 소통하는 기본적인 방법 중 하나인 std::cout
에 대해 알아봅니다.
TL;DR
std::cout << 출력할데이터;
의 형태로 입력하면 출력할데이터가 화면에 출력됨std::cout << 출력할데이터 << 출력할데이터 << 출력할데이터 << ...;
와 같은 형태로, 여러 개의 출력할데이터를 한 번에 기술할 수도 있음"\n"
은 화면에서 줄바꿈을 나타내는 하나의 문자이며,"\t"
은 화면에서 탭을 나타내는 하나의 문자임
std::cout
std::cout
은 화면에 글자를 출력시키기 위한 표준출력스트림(standard output stream)입니다1. 일반적으로 우리가 사용하는 컴퓨터에서는 콘솔 화면에 글자를 출력시켜주는 역할을 수행합니다.
기본사용법
std::cout
를 씀<<
라는 연산자를 이어붙임- 그 다음에
출력할데이터
를 적음 - C++ 문장을 끝내기 위해
;
를 적음
앞서 우리의 예제코드에 적혀있던 문장을 가져와서 봅시다.
이 코드에서는 "Hello, world!\n"
만큼이 출력할데이터가 되는 것입니다.
실행 결과는 이미 아시다시피 다음과 같지요.
"\n"
, "\t"
위의 예제코드에서 출력할데이터를 보면, C++ 코드 상에는 끝에 "\n"
라는 문자가 적혀있는데, 실행결과에는 이 문자가 출력되지 않았다는 것을 확인할 수 있습니다.
C++에서 문자 "\n"
은 한덩어리의 문자로 보며, 줄바꿈이라는 기능을 수행하는 문자입니다. 우리가 키보드로 [ENTER] 키를 누르는 효과와 동일하다고 이해하면 됩니다. "\"
(역슬래시)와 "n"
(영소문자 n)이라는 두 개의 분리된 문자로 해석하지 않는다는 점에 주의하시기 바랍니다.
자매품으로, "\t"
도 알고 계시면 좋습니다. "\t"
는 마찬가지로 한덩어리의 문자로 탭이라는 기능을 수행합니다. 키보드로 [TAB] 키를 누르는 효과와 동일합니다. 글 작성 시 일정 간격을 유지하며 단어를 나열하고자 할 때 유용하게 쓰입니다.
여러 데이터 출력하기
출력할데이터가 여러 개라면, 위의 사용법에서 2번과 3번을 반복해서 쓸 수 있습니다.
이렇게 작성하면, "AAA\n"
, 숫자 123
, "\n"
, "BBB\n"
이라는 총 4개의 데이터가 순차적으로 출력되는 것이지요. 결과는 다음과 같습니다.
여기서 주의하실 부분이 있습니다. 출력할데이터 한 칸에는 하나의 데이터만 쓸 수 있다는 점입니다.
예를 들어, 숫자 123
과 줄바꿈("\n"
)은 숫자와 문자로 총 두 개의 데이터이기 때문에, 반드시 두 덩어리로 나누어서 써야한다는 것입니다.
std::cout << 123"\n"; // WRONG!!!
std::cout << 123 << "\n"; // CORRECT :D
나중에 자료형에 대한 개념을 알고 나면, 좀 더 명확하게 이해가 되실 것입니다.
원래 ""
안에 한글을 적어서 출력할 수도 있습니다만, 대부분은 한글을 입력하면 문자가 깨져서 나올 것입니다.
이는 코드 상의 문제가 아니라, PowerShell에서 한글 문자를 기본적으로 지원하지 않아 생기는 문제입니다.
이에 대한 해결책은 PowerShell에서 git log, diff 출력 시 한글 깨지는 오류 해결 글을 참고하시기 바랍니다.
Chanagelog
- 2022-02-04: 최초 게시
-
엄밀히는
std
부분은 namespace라고 하는 것이고,std::cout
이라는 표현은std
에 소속된cout
이라는 의미입니다. 일부 자료에서는using namespace std;
등을 가르치기도 합니다만, 이런 문법은 나중에 살펴보기로 하고 여기서는std::cout
이라는 것을 통째로 기억하시길 권해드립니다. ↩︎