• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

2차원 배열 구성

23.09.30 21:50 작성 조회수 127

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님의 프로필

Soobak

2023.10.02

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

 

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

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