728x90
728x90
bits/stdc++.h
- C++의 표준 라이브러리가 모두 포함된 헤더이다.
- 이 헤더를 사용하면 iostream, cstdio 등 여러 라이브러리에 들어있는 함수 등을 하나하나 신경 쓸 필요 없이 코딩에 집중할 수 있다.
- 몇몇 코딩 테스트(삼성 코딩 테스트 등)에서는 이 헤더를 쓸 수 없고 공지에서 주어지는 라이브러리만을 써야 하기 때문에 주의해야 한다.
사용 방법
코드 복사하기
- 아래의 링크에 있는 코드들을 모두 복사한다.
- 코드를 보면 여러 헤더들이 include 되어있는 것을 확인할 수 있다.
더보기
#ifndef _GLIBCXX_NO_ASSERT
#include <cassert>
#endif
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#if __cplusplus >= 201103L
#include <ccomplex>
#include <cfenv>
#include <cinttypes>
#include <cstdbool>
#include <cstdint>
#include <ctgmath>
#include <cwchar>
#include <cwctype>
#endif
// C++
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>
#if __cplusplus >= 201103L
#include <array>
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <forward_list>
#include <future>
#include <initializer_list>
#include <mutex>
#include <random>
#include <ratio>
#include <regex>
#include <scoped_allocator>
#include <system_error>
#include <thread>
#include <tuple>
#include <typeindex>
#include <type_traits>
#include <unordered_map>
#include <unordered_set>
#endif
폴더 및 헤더 파일 생성하기 & 코드 붙여넣기
- include 폴더에 bits 폴더를 생성한 후, 이 안에 stdc++.h 헤더 파일을 생성하고 복사했던 내용을 붙여 넣어준다.
- MinGW의 경우 C:\MinGW\include\bits 경로에 헤더 파일을 생성한 후, 내용을 추가해준다.
- 맥에서 gcc를 설치했을 경우, 다음의 명령어를 입력하여 파일을 생성한 후, 내용을 추가해준다.
> cd /usr/local/include
> mkdir bits
> cd bits
> vi stdc++.h
사용하기
- 헤더를 사용하고 싶을 경우, 다음과 같이 <bits/stdc++.h> 헤더를 불러와 사용해주면 된다.
- 사용 예로, 다음과 같은 코드를 작성한 후 a.cpp 파일을 생성해본다.
#include <bits/stdc++.h>
using namespace std;
int main() {
cout << "Hello, World!" << endl;
return 0;
}
- 다음의 명령어를 실행하여 a.cpp 파일을 컴파일 시켜 실행 파일로 만들 수 있다.
- a.cpp 파일을 엄격하게(-Wall) C++14 버전으로 컴파일해서 test.out 이라는 파일을 만들라는 뜻이다.
> g++ -std=C++14 -Wall a.cpp -o test.out
(참고) 코딩 테스트를 준비할 때 필수적으로 알아야 할 라이브러리들
- 각 라이브러리에 포함된 주요 함수를 알아보자.
① iostream
swap | getline | clear | fill | tie |
precision | sync_with_stdio | cin | cout | stdio.h의 함수들 |
printf | scanf | puts |
② string.h
memcpy | memset | size_t |
③ algorithm
find | swap | fill | remove | unique |
rotate | shuffle | sort | stable_sort | lower_bound |
upper_bound | min | max | min_element | max_element |
next_permutation | prev_permutation |
728x90
728x90
'Programming > C++' 카테고리의 다른 글
[C++] unordered_map (0) | 2022.11.08 |
---|---|
[C++] map(맵) (0) | 2022.11.08 |
[C++] pair(페어)와 tuple(튜플) (0) | 2022.11.03 |
[C++] lower_bound(), upper_bound() ; 이진 탐색(Binary Search) (0) | 2022.11.01 |
[C++] sort 함수를 이용하여 오름차순/내림차순 정렬하는 방법 (0) | 2022.10.27 |
[C/C++] 현재 날짜/시간 원하는 형태로 출력하기 (0) | 2022.10.20 |
[C++] 동적 할당(Dynamic Allocation) 방법 (0) | 2022.08.24 |
[C++] cin.ignore() (0) | 2022.07.09 |