본문 바로가기

C++

[C++] 포인터 vs 배열

문자열은 포인터와 배열, 두가지로 표현할 수 있다.

 

const char* test1 = "Hello World"

char test2[] = "Hello World"

 

둘의 결정적인 차이점은  test1은 문자열이 시작하는 주소를 가리키는 포인터이고 

배열명 test2는 문자열이 시작하는 주소 자체이다. 그래서 test1은 자신의 주소를 따로 가진다.

그래서 &test1은 문자열이 시작하는 주소가 아닌 전혀 다른 위치를 가리킨다.