13. 배열 포인터

Yongs12 ㅣ 2023. 6. 3. 17:40

다차원 배열은 포인터를 통해서 다룰 수 있는데 이때 포인터의 타입은 배열의 첫 번째의 크기와 일치해야 한다.


2차원 배열의 포인터

// 2차원 배열 선언
int arr[3][4];

// 2차원 배열을 가리키는 포인터
int (*pArr)[4] = arr;
(*pArr)   			[0][1][2][3] 

((*pArr) + 1)  		[0][1][2][3]

((*pArr) + 2)   		[0][1][2][3]

2차원 배열 arr[3][4]의 3행 4열을 포인터로 가리킬 시 4열 배열에 대한 포인터로 가리킨다






3차원 배열의 포인터

// 3차원 배열 선언
int arr[2][3][4];

// 3차원 배열을 가리키는 포인터
int (*pArr)[3][4] = arr;
(*pArr)   		[0][1][2][3] 
	  			[4][5][6][7]
  	 			[8][9][10][11]
            
((*pArr) + 1) 	[0][1][2][3] 
	  			[4][5][6][7]
  	 			[8][9][10][11]
            
((*pArr) + 2)  	[0][1][2][3] 
	  			[4][5][6][7]
  	 			[8][9][10][11]

'C, C++' 카테고리의 다른 글

15. 공용체  (0) 2023.06.06
14. 구조체  (0) 2023.06.04
12. 다차원 배열  (0) 2023.06.02
11. C언어 메모리 동적 할당  (0) 2023.06.01
10. void 포인터  (0) 2023.05.31