사용법
-
[C++] pair, tuple 보다 편한게 구조체(Struct) ?프로그래밍/C++ 2020. 5. 8. 23:13
요약 : pair 와 tuple 보다 구조체(Struct) 를 사용하면 보다 효율적이고 직관적인 알고리즘 코딩이 가능합니다. 우선 pair 와 tuple 의 장단점을 조금 생각해보자면 pair는 원소의 접근이 편하지만 공간이 두 개로 한정적입니다. tuple은 공간이 무한하지만 접근이 불편합니다. 이러한 이유에서 저는 상황에 따라서 사용했습니다. 그러다가 최근에 구조체(Struct)를 사용하게 됬습니다. 구조체는 이름만으로도 무겁고 귀찮게 느껴집니다. 예를 들어 봅시다. 왼쪽, 오른쪽, 위, 아래의 4가지 정보를 한 세트로 하는 알고리즘을 구현한다고 생각해봅시다. 아래의 두 가지 구현에서 느끼셔야 할 부분은 세 가지 입니다. 1. 구조체 구현이 얼마나 간단한가. 2. 원소 추출이 얼마나 간편한가. 3. ..
-
[C++] Map 컨테이너 기본 사용법 및 예제프로그래밍/C++ 2020. 5. 8. 22:34
사용 라이브러리 · 기본함수 선언문 · map 변수명 추가 및 삭제 · insert( make_pair(key, value) ) : pair 의 형태로 원소를 저장합니다. · erase(key) : 해당 key 값에 해당하는 원소를 삭제합니다. · clear() : 모든 원소를 삭제합니다. 조회 · find(key) : 해당 key 값의 Iterator 값을 반환합니다. · count(key) : 해당 key 값의 원소의 갯수를 반환합니다. 기타 함수 · empty() : 비어있는 경우 1을 , 그렇지 않은 경우 0을 반환 · size() : 원소의 수를 반환 예제 코드 #include #include #include using namespace std; int main() { //////////////..
-
[C/C++] memset 함수 기본 사용법 및 예제프로그래밍/C++ 2019. 8. 28. 01:36
사용 환경 · 목적 · 메모리의 시작점부터 연속된 범위를 임의의 값으로 초기화 하고 싶은 경우 사용 -> (모든 값은 바이트 단위로 저장된다.) 기본 함수 구조 · memset( void * ptr, int value, size_t num ); · ptr : 채우고자 하는 메모리의 시작 주소 · value : 채우고자 하는 값 · num : 채우고자 하는 메모리의 크기 취약점 · memset 함수는 1바이트 단위로만 동작하기 때문에 0,-1 을 제외한 다른 숫자는 원하는 값이 안 나올 수 있습니다. 대표적으로 int 는 32비트로 4바이트가 됩니다. · 여기에 1이란 값을 넣으면 1바이트 마다 0x01 이라는 값이 채워집니다. 그렇게 4바이트가 채워지면 0x( 01 01 01 01) 이 채워지면서 다른 ..
-
[C/C++] C++ STL Pair 기본 사용법 및 예제프로그래밍/C++ 2019. 8. 23. 08:48
사용 라이브러리 · 기본함수 선언문 · pair p; 생성 · make_pair(자료형, 자료형) : 두개의 원소를 묶은 pair를 만든다. 조회 · first : 첫번째 인자를 반환 · second : 두번째 인자를 반환 기본 응용 · vector · v.push_back( pair( 자료형, 자료형 ) ) : 보통 좌표값을 배열에 저장할때 사용 예제 코드 #include #include #include using namespace std; int main() { //////////선언//////// pair p; //////////생성/////// //둘다 차이 없으니 편한걸 사용 p = make_pair(1, 2); p = { 1,2 }; ////////응용/////// ve..
-
[C/C++] C++ STL Stack 기본 사용법 및 예제프로그래밍/C++ 2019. 8. 22. 16:05
사용 라이브러리 · 기본함수 선언문 · stack s; 삽입 및 추출 · push(element) : 가장 위에 원소를 삽입 · pop() : 가장 위에 있는 원소 추출 조회 · top() : 가장 위에 있는 원소를 가져옴 기타 함수 · empty() : 비어있는 경우 1을 , 그렇지 않은 경우 0을 반환 · size() : 원소의 수를 반환 예제 코드 #include #include using namespace std; int main() { stack s; ////////////삽입 및 추출///////////////// s.push(1); // 1 s.push(2); // 2 1 s.push(3); // 3 2 1 s.push(4); // 4 3 2 1 s.pop(); // 3 2 1..