반응형
2차원 배열 포인터에 대해서 정리하자.
동적할당을 공부해보면
int* i = new int()
이렇게 할당할 것이다.
그렇다면
int** map = new int* [10] 의 경우는 어떨까?
for(int i=0; i<10; ++i)
*(map+i) = new int[10];
이렇게하면 된다.
그림으로 하면
0 map |
|
|
|
|
|
|
|
|
|
1 map |
|
|
|
|
|
|
|
|
|
2 map |
|
|
|
|
|
|
|
|
|
3 map |
|
|
|
|
|
|
|
|
|
4 map |
|
|
|
|
|
|
|
|
|
5 map |
|
|
|
|
|
|
|
|
|
6 map |
|
|
|
|
|
|
|
|
|
7 map |
|
|
|
|
|
|
|
|
|
8 map |
|
|
|
|
|
|
|
|
|
9 map |
|
|
|
|
|
|
|
|
|
0~9의 맵에 다시 동적으로 할당을 해주는 것이다
그래서
for(int i=0; i<10; ++i)
*(map+i) = new int[10];
을 쓴거다.
반응형
'프로그래밍 > C, C++' 카테고리의 다른 글
[C++] 데이터 자료형 정리 와 WORD, DWORD (0) | 2022.06.14 |
---|---|
파일 입출력.(fseek, ftell, fwrite, fread) (0) | 2017.09.29 |
malloc과 new의 차이. (0) | 2017.09.07 |
#pragma pack -2 (0) | 2017.09.07 |
#pragma pack - 1 (0) | 2017.09.07 |