C++) iostream을 이용한 기초 입출력

곽경호·2024년 1월 10일

헤더파일에 관한 기초 상식

#include <iostream>

int main()
{
    std::cout << "Hello World!"<<std::endl;
}

위의 예제의 헤더파일 선언을 보면 C는 ".h"였던것과는 다르게 C++ 은 확장자가 없다.

그렇다면 C++에서는 헤더파일의 확장자가 다른가?

그건 아니다. C++에서는 프로그래머가 정의하는 헤더파일의 선언이 아닌, 표준 헤더파일의 선언에서는 확장자를 생략하기로 약속되어 있다.

기초 입출력

#include <iostream>

위 헤더 파일에 들어있는 std 클래스 안에있는 cout, cin, endl등을 이용해 C의 printf, scanf의 기능을 수행 할 수 있다.

#include <iostream>

int main()
{
    std::cout << 'Hello World!';
    return 0;
}
Hello World!

'std::cout'을 이용한 출력

std::cout<<'출력대상';

C++에서의 기본적인 출력형태는 위와 같다

'<<' 연산자를 이용한 출력대상의 연이은 표현과 개행

  • <<도 사실 연산자인데 <<이 연산자를 이용하면 둘 이상의 출력대상을 연이어서 출력 할 수 있다.

std::cout<<'출력대상1'<<'출력대상2'<<'출력대상3';

'std::cin'을 이용한 입력

std::cin>>'변수';

C++에서의 기본적인 출력형테는 위와 같다

'>>' 연산자를 이용한 출력대상의 연이은 표현과 개행

std::cin>>'변수1'>>'변수2';

배열 기반의 문자열 입출력

#include <iostream>

int main(void){
    char name[100];
    char lang[200];

    std::cout<<"이름은 무엇입니까? ";
    std::cin>>name;

    std::cout<<"좋아하는 프로그래밍 언어는 무엇인가요? ";
    std::cin>>lang;

    std::cout<<"내 이름은 "<<name<<"입니다.\n";
    std::cout<<"제일 좋아하는 언어는 "<<lang<<"입니다."<<std::endl;
    return 0;
}

std:: VS using namespace std

using namespace std란?
using은 사용한다, namespace 공간, std는 클래스를 의미한다

using namespace std을 사용한 예시

#include <iostream>
using namespace std; 

int main()
{
    int num = 0;
    cin >> i; 
    cout << i; 
    return 0;
}

using namespace std을 사용하지 않은 예시

#include <iostream>

int main()
{
    int i = 0;
    std::cin >> i;
    std::cout << i;
    return 0;
}

위와 같이 using namespace std를 사용하면 비교적 간편하게 코드를 작성할수 있지만 권장하지는 않는 방법이다

  • using namespace std를 선언하면 namespace std를 모두 가져오기 때문에 using namespace std를 사용하지 않은 예시의 문법을 따르는 것이 좋다.
profile
개발 블로그 임미다

0개의 댓글