HANCO
[C++] [01] 입출력 방식 본문
오늘은 C++입출력 방식에 대해 배워봅시다.
C++은 C언어를 포함할 수 있는 언어로서, C언어에서 작성한 대부분의 함수들은 C++환경에서 컴파일이 가능 합니다. 그러나 C++에서의 입출력방식은 C언어와 약간의 차이점이 있습니다.
C언어에서 printf, scanf를 사용했었다면 C++에서는 cout, cin이라는 문법을 사용합니다.
[정리]
-C언어-
printf("Hello World!");
char str;
scanf("%s", &str);
-C++언어-
cout<<"Hello World!";
char str;
cin>>str;
위의 [정리] 에서는 간단하게 C언어와 C++언어의 입출력방식 차이를 적었는데요. 그럼 "<<", ">>"라는 문구들이 궁금하실 겁니다.
C언어에서는 #include<stdio.h>를 전처리하여 printf와 scanf를 사용하였다면,
C++언어에서는 #include<iostream>이라는 전처리를 하여 cout과 cin을 사용 합니다.
#include <iostream>
int main(){
int num = 1;
std::cout<<num<<std::endl;
std::cout<<"Hello World!"<<std::endl;
}
대략 C++언어의 입출력은 위와 같습니다. #include<iostream>문을 사용한다면 cout, cin, endl이라는 세가지의 문법을 사용할 수 있습니다.
- std::cout : 출력
- std::cin : 입력
- std::endl : 개행
---> 이 세가지의 문법이 #include<iostream>에 포함되어 있다고 보시면 됩니다.
여기서 의문점이 하나들게 됩니다. 저 반복되어지는 "std::" 라는 문구를 꼭 계속 적어줘야 하나? 라는 것 입니다.
그래서, 개발자들은 using namespace std; 라는 문구를 전처리기아래에 추가해줍니다. 이 문구의 뜻은 앞으로 std::를 사용할 건데 앞에 붙이지 않아도 머라하지 말아라 라고 컴파일러에게 명시해 주는 것이라고 보시면 될거 같습니다.
using namespace std;를 사용한 소스를 봅시다.
#include <iostream>
using namespace std;
int main(){
int num = 1;
cout<<num<<endl;
cout<<"Hello World!"<<endl;
}
-> 훨씬 코드가 간단해지는 것을 확인 하실 수 있어요.ㅎㅎ
cout, cin을 활용하는 법 입니다.
cout은 여러개의 <<, <<, << 등을 사용함으로서 변수와, 문자열을 구별해서 출력할 수 있습니다.
int age = 23;
cout<<"제 나이는 "<<age<<"살 입니다."<<endl;
[결과] >> 제 나이는 23살 입니다.
cin도 마찬가지로 여러개의 >>, >>, >> 등을 사용함으로서 여러개의 변수를 동시에 입력받을 수 있습니다. C언어로 생각하자면 scanf("%d %d %d", &변수1, &변수2, &변수3);이 되겠죠?
int val1, val2, val3;
cin>>val1>>val2>>val3>>;
--->변수 세개를 입력 받을 수 있습니다.
이 정도를 배웠다면 C++환경에서 간단한 입출력은 하실 수 있으시다고 생각됩니다.
감사합니다. 질문은 댓글에 남겨주세요
'Programming > C++' 카테고리의 다른 글
[C++] [02]함수오버로딩 (0) | 2016.12.22 |
---|