강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

lyc021119님의 프로필 이미지
lyc021119

작성한 질문수

홍정모의 따라하며 배우는 C++

6.5 정적 다차원 배열

2차원 배열 구성

작성

·

220

1

const int num_rows{3}, num_columns{5};          int array[num_rows][num_columns] =     {         {1,2,3,4,5},         {6,7,8,9,10},         {11,12,13,14,15}     };

이렇게 행렬의 열과 행을 const로 상수 처리를 해버리면 컴파일에러가 발생하지 않는데 이"const"라는 키워드를 빼버리면 열과 행의 수가 변함으로 인해 메모리 공간을 할당을 못해서 컴파일 에러가 발생하는 건가요?

 

답변 1

2

안녕하세요, 답변 도우미 Soobak 입니다.

 

C++ 에서 배열의 크기는 컴파일 시점에 알려져야 하기 때문에, 상수가 아닌 변수로 크기를 지정할 수 없습니다.

따라서, const 키워드를 사용하여 num_rowsnum_columns 를 상수로 선언하여, 배열의 크기를 컴파일 시점에 알 수 있도록 하여 배열을 선언하는 것입니다.

 

lyc021119님의 프로필 이미지
lyc021119

작성한 질문수

질문하기