![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ETLw2/btsH8DuzP4Q/skAuKkNqLw8mkDztKKOKsK/img.png)
enum (열거형) 열거형상수를 정의하고, (default 값) 순차적으로 정의되어있는 수들을 그룹화하는 방법원하는 숫자를 지정할 수도 있다.enum class- 일반 enum 과는 다른 점이 있다. (C++11 이후)- 일반 enum의 경우, int 범위 내의 상수를 가진다 (이름만으로 상수에 접근이 가능하다)- enum class의 경우, 열거형 상수는 '[enumName]::[상수Name] 형식으로 접근해야하며 명확히 구분된다 (같은 상수 이름을 가지더라도 문제가 되지 않는다) enum Color{ RED, // 0 GREEN, // 1 BLUE // 2};//숫자 지정 가능enum Status{ ACTIVE =1, INACTIVE = 4, PENDING = 2};/..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/tfsnf/btsH7FmeZBn/Gf66InAZpbKdPn3WKozuLk/img.png)
Define ( + inline , constexpr) Define#DEFINE [변수명] (기능)- 변수명 : 왠만하면 대문자로 표기 ( ex) #define TEST_COUNT 0 )- 기능 : 해당 부분은 상수값을 표현한다기 보다는 기능을 랩핑하는쪽에 가까움( ex) #define TEST_FUNC std::cout 1. 상수 정의기const를 사용하듯, 상수를 전처리 단계에서 설정함 ( 매크로를 이용하여 )#define MAX_SIZE 1002. 함수 형태의 매크로 함수형태의 매크로를 사용시에 괄호 ( "()" )를 사용하지 않아도 되나, 안정성을 높이기 위해 사용한다c++11이상의 경우 상수표현은 constexpr , 함수 표현은 inline으로 대체 가능#define MAX(a,b) ( (..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/qYvkZ/btsH8wnWTmr/hMNv3IgUOEPtZl6GCsWkXk/img.png)
조건문, 반복문 조건문에 들어갈 수 있는 형식1. bool2. 비교연산3. 논리연산4. 함수호출5. 문자열 비교6. 포인터 검사7. 컴마(,)연산자8. 삼항연산자조건문조건문에 들어갈 수 있는 형식boolif (true) {} 비교연산if ( a > b ) {}논리연산if ( a ==1 && b ==2 ) {}함수호출if (TEST()) {} // bool TEST{ return true; } 문자열비교if ("compare" == "fail" ) {} 포인터검사if(ptr) { // ptr이 null이 아닐때 } // if (!ptr) {// ptr이 null 일때} 컴마(,)연산자if ( (a= b+1), a>20 ) {} // b+1이 a에 대입되고, a가 20보다 크면 수행삼항연산자if ( (a ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ba6EAZ/btsH7WNFpd3/sWgKY6TF0SiMkEuYMrSbo1/img.png)
자동 캐스팅(타입변환), 변수 생존 범위자동 캐스팅int 와 float/double이 계산 될 경우, 더 큰 데이터 자료형으로 자동 캐스팅 된다.하지만, 컴파일에게 자동으로 맡기는 것이아닌, 직접 추가해줄 수 있는 방법이 있다.int main(void){ int a = 1; float b = 2.2f; int result; result = a + b; // a가 1.0 으로 자동 캐스팅됨 result = (float)a + b; // 직접 (float)을 통해 캐스팅해줄 수 있다 }자동 캐스팅의 경우 의도치 않은 결과값이 나올 수 있기에, 캐스팅 해주는 것이 바람직하다 (* 의도치 않은 코드는 버그를 일으킴) 변수 생존 범위중괄호 (for문, 함수(main..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/vt3ln/btsH6CiyzlX/fbl1EClA0u2QL0djEiNGek/img.png)
메모리 구조, const 메모리구조메모리구조역할Code 영역실행할 프로그램의 코드 (Text 영역이라고도 불림)Data 영역rodata 영역 : 읽기전용 영역 (ex_ 상수, 상수형 문자열, printf의 중괄호 부분).data 영역 : 초기값이 있는 경우, 정적변수(static), 전역변수.bss 영역 : 초기값 없는 경우, 읽기/쓰기 가능Heap 영역동적할당 공간메모리의 낮은 주소에서 높은 주소로 저장stack 영역지역변수와 매개변수 저장메모리의 높은 주소에서 낮은 주소로 할당Heap 과 Stack은 서로 공간을 공유OverFlow일정한 공간을 공유하기에, 둘다 많이 할당하여 더이상 채울 수 없을경우 overflow 오류를 일으킴먼저 도달한 쪽의 이름을 따서, Heap Overflow, Stack O..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b7WGHm/btsH6SS0k9g/LvtKFAZdfq2EaJWSLvMFUK/img.png)
비트연산 비트란?- 0 과 1로서 숫자를 표현 하기 위해 사용되는 것을 비트라고 함.(이진수 체계에서 0 또는 1의 값을 가질 수 있는 최소한의 데이터 단위)ex) 0000 0010 => 256(2^8) 128(2^7) 64(2^6) 32(2^5) 16(2^4) 8(2^3) 4(2^2) 2(2^1) 1(2^0) 숫자 , 문자, 이미지 ,오디오 등 모든 형태의 데이터는 이진수로 변환되어 저장 및 처리됨효울적인 데이터 처리와 저장을 가능하게함 (최소한의 단위로 표현하므로, 사람이 아는 숫자 체계보다 리소스 투입이 적다) 비트 연산AND 연산두개의 비트가 1로 같으면 1,다르면 0 을 출력[예제]1 + 1 -> 11 + 0 -> 00 + 1 -> 00 + 0 -> 0OR 연산두개의 비트 중 한개라도 1이면 ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bps4sx/btsH60J0ikp/wk55qdKawLJlSnzku863jK/img.png)
대입연산, 사칙연산, 증감연산, 비교연산, 논리연산 대입연산오른값을 왼값으로 넣어주는 과정int main(void){ int a = 2; // 왼값 : a , 오른값 : b} 사칙연산덧셈 , 뺄셈, 곱셈, 나눗셈 (몫), 나머지int main(void){ int a = 1; int b= 2; a = b + 3; // result : 5 a = b - 3; // result : -1 a = b * 3; // result : 6 a = b / 3; // result : 0 (* a가 int 값이므로 소수점이 나오지 않는다.) a = b % 3 // result : 2 (* a가 나누는값보다 작으므로 2가 나온다 (3보다 크지 않는 수는 그대로 출력) )} 증감연산..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/O5fLD/btsH5ZyxhVT/osOvMyAIk71QALpv2NImr0/img.png)
문자 자료형 문자 자료형 1 BYTE = 8 bit (256개 표현 가능)자료형크기범위charsigned char, __int81 BYTE-128 ~ 127unsigned char-1 BYTE0 ~ 255wchar_t__wchar_t2 BYTE0 ~ 65,535char8_t (C++20)-1 BYTEUTF-8 유니코드 저장 가능char16_t-2 BYTEUTF-16 유니코드 저장 가능char32_t-4 BYTEUTF-32 유니코드 저장 가능char : 알파벳 / 숫자 문자를 나타냄wchar_t : 와이드 문자 형식 또는 멀티바이트 문자를 지원함 (유니코드 지원)wchar_t인 경우 문자형식이 다르기 때문에, std:: cout 이 아닌 std::wcout을 사용해야한다.#include -> wcsle..
- Total
- Today
- Yesterday
- 포트폴리오
- stack
- BFS
- 기술면접
- JSON
- 코딩테스트
- HTML5
- DFS
- 버블정렬
- 타입변환
- 검증
- 백준
- 티스토리챌린지
- 오블완
- 게시판 프로젝트
- 알고리즘
- db
- 이진탐색
- 깊이우선탐색
- JDBC
- 예외처리
- 우선순위 큐
- 클래스
- SQL
- 게시판
- Java
- Thymeleaf
- bean
- Spring
- 정렬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |