C++/C++ 기초 플러스 6판(Book)

[C++] 동적 배열과 배열 표기

suppresswisely 2025. 3. 24. 20:06

new를 사용한 동적 배열의 생성과 파괴

int* psome = new int [10]; // 10개의 int형 값을 저장할 블록을 대입

delete [] psome; // 동적 배열을 해제

 

new를 대괄호 없이 사용했으면 delete도 대괄호 없이 사용해야 한다.[1]

 

배열 표기

psome[1]을 살펴보자. C++ 컴파일러는 이것을 *(psome + 1)과 완전하게 동등한 것으로 취급한다. *(psome + 1)은 배열의 두 번째 원소의 주소를 계산하고 그곳에 저장된 값을 알아낸다. 그 결과는 psome [1]이 동등하다는 것을 보여준다.[2]

psome[i]를 *(psome + i)로 변환한다

 

[1]p.193

[2]p.199