CODEDRAGON ㆍDevelopment/C, C++
다차원 배열 선언 시 주의사항
- 열의 길이는 반드시 설정
- 2차원 배열의 물리적 메모리 구조
열의 길이는 반드시 설정
int array1[ ][ ]={1, 2, 3, 4, 5, 6, ,7 ,8 ,9, 10, 11, 12}; // 에러(행과 열 모두 설정 안함) int array2[4][ ]={1, 2, 3, 4, 5, 6, ,7 ,8 ,9, 10, 11, 12}; // 에러(행만 설정) int array3[ ][2]={1, 2, 3, 4, 5, 6, ,7 ,8 ,9, 10, 11, 12}; // 정상(열만 설정) int array4[ ][3]={1, 2, 3, 4, 5, 6, ,7 ,8 ,9, 10, 11, 12}; // 정상(열만 설정) int array5[ ][4]={1, 2, 3, 4, 5, 6, ,7 ,8 ,9, 10, 11, 12}; // 정상(열만 설정) |
2차원 배열의 물리적 메모리 구조
int array[2][3] = {10,20,30,40,50,60};
2차원 배열의 메모리 할당 방식은 행과 열의 논리적인 구조로 되어 있지만 실제 물리적 메모리 구조는 아래 그림과 같이 1차원 배열의 형태로 되어 있습니다.
(이해를 위해 논리적 메모리 구조로 이해하는 것이 좋습니다.)
물리적 메모리 구조 | 논리적 메모리 구조 |
|
|
'Development > C, C++' 카테고리의 다른 글
Ex11-2차원 배열 선언 과 동시에 데이터 저장(초기화) (0) | 2015.07.21 |
---|---|
변수의 종류와 범위 (0) | 2015.07.20 |
Ex10-2차원 배열의 선언 (0) | 2015.07.20 |
LAB01-영문문자열 거꾸로 출력기 (0) | 2015.07.20 |
LAB02-계산기(if문) (0) | 2015.07.20 |