본문 바로가기

Programming Language/C++

[C++] 입출력 ( cin / cout )

반응형

C++에서 입출력을 수행하기 위해서는 <iostream> 헤더 파일을 이용한다. 

C에서의 <stdio.h>와 동일하다. 

 

1. 출력 (cout)

 

C++에서 출력을 하기 위해서는 cout 함수를 이용한다. 

C에서의 printf와 같은 역할을 하는데, printf에서는 출력하는 변수의 자료형 (%d , %f 등)을 표현해주어야 했지만,

cout은 출력 자료형을 지정하지 않아도 된다.

호출 예시는 다음과 같다.  

1
2
3
4
5
6
7
8
9
10
#include<iostream>
 
using namespace std;
 
int main(void) {
 
    int a = 10;
    cout << "숫자 : " << a << '\n';
    cout << "숫자 : " << a << endl;
}
 

이처럼 <<를 이용하면 계속해서 이어서 출력해 나갈 수 있다. 

endl은 '\n'과 같은 역할을 수행한다. 다만, '\n'과 달리 endl은 버퍼를 초기화시켜주는 역할도 수행해준다. 

(대신에 시간이 더 오래 걸림)

 

2. 입력 (cin)

 

C++에서 입력을 하기 위해서는 cin 함수를 이용한다. 

C에서의 scanf와 같은 역할을 하는데, 마찬가지로 cout과 같이 자료형을 지정하지 않아도 된다.

cout과 반대로 >>을 사용한다. 

* cin은 맨 앞에 white space (공백, 개행문자, 탭) 이 있는 경우 무시한다. 

1
2
3
4
5
6
7
8
9
10
#include<iostream>
 
using namespace std;
 
int main(void) {
 
    int a;
    cin >> a;
    cout << "입력결과  : " << a << endl;
}
 

다만, cin은 입력을 받을 때, 공백이나 개행문자('\n')은 받아들이지 못한다.

따라서 공백이 포함된 긴 문자열을 입력받을땐 cin이 아니라 한 줄을 받아들이는 getline 함수를 이용해야 한다.

 

 

추가적으로 using namespace std; 를 추가하지 않으면 cin이나 cout앞에 모두 std:: 를 붙여주어야 한다. 

 

반응형