헤더파일 2

[C++] 가변배열(동적할당 활용)

가변 배열의 구현 이전 시간에 공부한 동적 할당 개념을 활용하여 'int형 가변 배열'을 직접 구현해보았다. - Arr.h 헤더 파일 및 Arr.cpp 파일 생성 Arr.h 헤더 파일의 생성 가변 배열의 필수 구조체 멤버 // int형 가변배열 typedef struct _tabArr { // 필수 멤버 3가지 int* pInt; int iCount; int iMaxCount; }tArr; 가변 배열을 구현하기 위해 헤더 파일에 구조체를 생성하였다. 구조체 필수 멤버로는 배열을 저장할 포인터 변수(pInt), 현재 배열의 요소 수를 확인할 변수(iCount), 배열의 최대 크기 변수(iMaxCount)까지 3가지가 필요하다. 가변 배열 필수 함수 // 배열 초기화 함수 void InitArr(tArr* ..

📚책읽기 2022.04.04

[C/C++] 메모리 영역, 변수-2 (정적변수/외부변수), 분할구현

메모리 영역 스택 영역 데이터 영역 특징: 프로그램 시작 시 생성 -> 프로그램 종료 시 해제 데이터 영역은 함수를 실행시켜서 저장되는 스택 영역과는 별개로 함수가 끝나도 계속 존재한다. 읽기 전용 (코드, ROM) 힙 영역 변수의 종류 지역변수 전역변수 사용되는 메모리 영역 : Data 영역 정적변수 (static) 사용되는 메모리 영역 : Data 영역 (전역변수와 동일) 정적변수는 함수 외부에 호출한 경우 어느 지역에서든 해당 변수를 사용할 수 있다는 점과 같이 전역변수와 매우 비슷한 성질을 갖는다. 전역 변수와 차이점 전역변수는 다른 cpp 파일에 같은 이름의 변수를 전역변수로 선언하여도 컴파일 단계에서는 문법적으로 문제없이 실행되지만 빌드 후 각각의 파일이 합쳐지는 링킹(Linking) 과정에서..

📚책읽기 2022.03.02
728x90