본문 바로가기
  • Let's study
알고리즘/C++

[알고리즘] C++ 기본

by 코딩고수이고파 2021. 9. 9.

기본 구조

#include<iostream>

int main(){
	return 0;
}

 

입출력

입력: cin>>변수

출력: cout<<출력 값

#include<iostream>

int main(){
    int a,b;
    
    std::cin >> a >> b;			//a와 b를 입력받음
    std::cout << a;			//a출력
    std::cout << "Hello World!";	//Hello World! 출력
    
    return 0;
}

 

using namespace std;

#include<iostream>

using namespace std;

int main(){
    int a,b;
    
    cin >> a;		
    cout << a;			
   
    return 0;
}

원래는 cin, cout 외에도 std와 관련된 모든 곳에 std::를 붙여줘야 하지만 좀 더 편하게 쓰기 위해 나온 것이 namespace이다. 식별자(형식, 함수, 변수 등의 이름)간 의 충돌을 방지하기 위해 사용되며 using namespace std;를 써줌으로써 std::를 생략할 수 있다.

 

입출력 속도

- main 함수 안에 ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL);를 추가하면 속도가 빨라진다.

- 개행 출력 시 endl 보다 '\n'이 더 빠르므로 되도록이면 '\n'을 쓰는 게 좋다.

#include<iostream>

using namespace std;

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL), cout.tie(NULL);
    
    cout<<"Hello"<<endl;
    cout<<"Hello"<<'\n';
    
    return 0;
}

 

STL

- Standard Template Library의 약자

1. 컨테이너: 데이터를 저장, 관리할 목적으로 만들어진 객체

ex) list, vector, stack, queue, deque, pair, map, set...

2. 반복자(Iterator): 컨테이너에 저장되어 있는 데이터를 순회할 수 있는 객체이며, 컨테이너의 특정 위치를 나타낸다.

3. 알고리즘: 컨테이너 객체의 원소를 검색이나 정렬 등의 활동을 수행한다.

ex) binary_search, lower_bound, sort

 

'알고리즘 > C++' 카테고리의 다른 글

[알고리즘] 선택 정렬 - C++  (0) 2021.09.22
[알고리즘] 버블 정렬 - C++  (0) 2021.09.22
[알고리즘] Algorithm 헤더 - C++  (0) 2021.09.19
[알고리즘] C++ Vector 사용법  (0) 2021.09.09
[알고리즘] C++ 스택, 큐, 덱  (0) 2021.09.08

댓글