배열의 이름과 포인터 변수의 차이점
2022. 6. 6. 15:32ㆍ개발자 일지
반응형
SMALL

안녕하세요. 도도시입니다.
컴퓨터 작업을 하다 보면 배열의 이름과 포인터 변수를 가끔 헷갈려하시는 분들이 있습니다.
오늘은 배열의 이름과 포인트 변수의 차이점에 대해 알아보도록 하겠습니다.
배열이란?
동일한 특성을 지닌 데이터들이 규칙적으로 나열되어 있는 집합을 의미합니다.
데이터를 관리하기 쉽도록 하나로 묶어 놓은 것을 뜻합니다.
배열의 이름
배열의 이름은배열의 시작 주소 값을 의미하는 포인터로 변수가 아닌 상수 형태의 포인터로 대입 연산이 불가능합니다.
주소 값이 아닌 포인터인 이유는 메모리 접근에 사용되는 *연산이 가능하기 때문입니다.
포인터 변수와 배열의 이름의 차이점
포인터 변수와 배열의 이름은 이름이 존재하고, 메모리의 주소 값을 저장한다는 점에서
공통점을 지니나, 주소값의 변경이 가능한 것은 포인터 변수뿐이며, 배열의 이름은 주소 값의 변경이 불가능합니다.
포인터를 배열의 이름처럼 사용할 수도 있는데요. 아래와 같이 포인터 변수를 사용해 배열의 형태로 메모리 공간에
접근하는 방법을 사용할 수 있습니다.
int main(void)
{
int arr[3] = { 10, 20, 30};
int * ptr = &arr[0]; // int * ptr = arr;과 동일
printf("%d %d \n", ptr[0], arr[0]);
printf("%d %d \n", ptr[1], arr[1]);
printf("%d %d \n", ptr[2], arr[2]);
printf("%d %d \n", *ptr, *arr);
return 0;
}
10 10
20 20
30 30
10 10
반응형
LIST
'개발자 일지' 카테고리의 다른 글
| 유니티 기본 화면 구성과 조작법, 툴바 조작 도구 (0) | 2022.06.06 |
|---|---|
| 컴파일 할 때 쓰이는 '디버거'의 기능, 단축키 관련 지식 (0) | 2022.06.06 |
| [게임 엔진] 유니티 다운로드 및 설치 방법 (0) | 2022.06.06 |
| 개발자의 필수 절차, 알고리즘과 코딩 (0) | 2022.06.06 |
| 유니티 게임 개발 시 필요한 비주얼 스튜디오 2019 설치 방법 (0) | 2022.06.05 |