우리가 코드에 hello world를 입력해놨죠?그러면 이 문자열은 코드가 빌드할 때 실행파일 어딘가에 함께 저장이 된다실행파일은 하드디스크에 저장이 된다. 그래서 hello world라는 문구는 실행파일에 포함된 상태로 하드디스크에 일단 저장이 된다. 프로그래머나 사
using namespace std; : 네임스페이스 설명 std::coutint main() : entry point (main함수가 시작지점이다, 기본값이다)cout : character outendl : end line (줄바꿈)<< : stream i
파이썬과 달리 c++는 변수를 정의할 때 자료형을 미리 지정해야 하고, 지정한 자료형은 바꿀 수 없다. 이는 메모리를 미리미리 할당하기 때문이다.변수명은 메모리 공간의 주소값c++는 변수 자체가 메모리가 정확히 어디에 있는지 주소를 알고 있기 때문에 값을 가져오는 시간
: 동일한 자료형을 가진 여러개의 변수를 하나의 이름으로 묶는 것0부터 시작(zero-based)출처 : 홍정모 연구소 https://github.com/HongLabInc/HongLabCppSummary
cin은 데이터를 흘려넣어 보내는 스트림그 데이터를 해석하는 것은 자료형자료형에 따라서 알아서 처리해주기 때문에 cin이 scanf()보다 편리cout은 띄어쓰기 전까지만 출력가능ex) cin : 콘솔 입출력cout : 콘솔getline을 사용하면 띄어쓰기도 출력가능e
조건식의 결과가 짝수면 ? 다음에 있는 "짝수입니다" 출력조건식의 결과가 홀수면 : 다음에 있는 "홀수입니다" 출력case 다음에는 number에 들어갈 수 넣는다break : 밑에 부분을 더이상 실행시키지 않고 프로그램을 종료한다출처 : 홍정모 연구소
for문 기본예제 : 0부터 9까지 출력
C++ 표준 라이브러리를 사용하여 난수 생성기를 초기화하고, 지정된 범위 내에서 균등 분포를 따르는 정수를 생성하는 방법std::random_device는 하드웨어 엔트로피 소스를 사용하여 난수를 생성하는 클래스입니다. 이는 진정한 난수를 생성할 수 있는 하드웨어 장치
변수 a의 주소 : &ab의 포인터에 a의 주소를 넣음 \*b는 주소가 아니라 포인터임! 그래서 이상한 16진수가 아니라 값이다!(정수, 문자열 등등)즉, a 와 \*b 는 같다포인터 변수 b를 이용해서 a의 값을 바꾼 것!주소 자체의 크기는 항상 동일하다int든 do
함수 선언과 정의 분리 가능반환 자료형이 지정되지 않았음 (void) 나중에 결과값을 받을 변수 설정(sum)이 필요함포인터를 매개변수로 받으면 나중에 포인터를 이용해서 메모리공간에 값을 저장하는 것출처 : 홍정모 유튜브
: 값 변경 불가문자 배열의 길이는 100이고, 변경 불가능하다영어 사용이 디버깅에 유리하다문자열을 매개변수로 넣기여기서는 모든 문자열 배열의 길이가 동일하다고 가정bool IsEqual(const char str1\[], const char str2\[])와 bool
크기를 변경할 수 없다아주 큰 메모리를 사용할 수 없다\-> 왜냐하면 정적배열은 미리 메모리를 잡아놓기 때문에 그 이상의 메모리를 사용하게 되면 stack overflow가 발생할 수 있다.\-> 그래서 동적할당이 필요하다!두 개의 배열 중 더 작은 크기를 복사 제대로
구조체명 변수명;member(.) operator 사용구조체의 크기는 구조체 안의 멤버변수들의 크기의 총합보다 같거나 커야한다!!포인터는 member(->) operator가 화살표a.first 와 ptr_a -> first는 같다pairs 자체가 포인터pairs를 쓰
public : 우리가 편하게 사용할 수 있는 클래스private : 클래스 밖에서는 사용할 수 없음, 클래스 안의 멤버 함수에서만 사용할 수 있음, 프로그램 안정성을 위해서현재 만들고 있는 인스턴스의 주소여기서 this포인터는 my_class1의 주소이다출처 : 홍정
코드 설명 : 문자열을 다루기 위한 MyString 클래스를 정의하고 사용하는 방법멤버 변수:int size\_: 문자열의 길이를 저장합니다.char \*str\_: 동적으로 할당된 문자열을 가리키는 포인터입니다.생성자:기본 생성자 MyString(): 문자열의 기본
헤더파일멤버함수, 함수 정의만 하고, 코드는 .cpp 에 작성한다MyClass.h 파일이 여러군데에서 사용될 때 컴파일 한번만 하라는 뜻!맨 위에 선언 헤더 반드시 include여기에 MyClass.h 에서 선언했던 멤버함수나 함수들의 몸체 코드를 작성main 함수만
파일 입출력에 필요한 ofstream, ifstream 사용가능출처 : 홍정모 유튜브
데이터를 삭제한다기보다, 그 뒤의 데이터를 지우고자하는 데이터가 있는 자리로 복사를 하고, num_contacts\_를 하나 감소시킴으로써 원래 numcontacts가 4개에서 3개로 줄어듦에의해 삭제된 것처럼 보이게 하는것이다.출처 : 홍정모 유튜브
출처 : 홍정모 유튜브
cin을 cout으로 부터 풀어준다.(untie)stream을 tie 하면 다른 stream에서 입출력 요청 오기 전에 stream을 먼저 flush 시킨다.
만약 target값이 Astart 보다 크면 end = mid-1, tartget값이 Aend 보다 작으면 start = mid + 1근데, c++에는 stl 내장함수로 binary_search(start, end, target) 함수가 있기 때문에 매우매우 편리하게
투 포인터(Two Pointer) 배열에서 원래 이중 for문으로 O(N^2)에 처리되는 작업을 2개 포인터의 움직임으로 O(N)에 해결하는 알고리즘 cursor 슬라이딩 윈도우 (투포인터 탐색) 알고리즘