문자열은 포인터와 배열, 두가지로 표현할 수 있다.
const char* test1 = "Hello World"
char test2[] = "Hello World"
둘의 결정적인 차이점은 test1은 문자열이 시작하는 주소를 가리키는 포인터이고
배열명 test2는 문자열이 시작하는 주소 자체이다. 그래서 test1은 자신의 주소를 따로 가진다.
그래서 &test1은 문자열이 시작하는 주소가 아닌 전혀 다른 위치를 가리킨다.
'C++' 카테고리의 다른 글
| [C++] new vs malloc (0) | 2022.06.22 |
|---|---|
| [C++] 초기화 리스트는 선처리 영역에서 실행된다. (0) | 2022.06.22 |
| [C++] 포인터 vs 참조(레퍼런스) (0) | 2022.06.20 |
| [C++] 정수형, 불리언, 부동소수점 (0) | 2022.06.19 |
| [C++] 음수를 비트로 표현하는 방법(2의 보수), 진법 표현 (0) | 2022.06.18 |