배열 크기에서 예상되는 상수 표현식 오류
C에서 배열 선언에는 상수 크기가 필요합니다. 상수가 아닌 표현식으로 배열을 선언하려고 하면 "예상 상수 표현식" 오류가 발생합니다.
다음 코드 조각을 고려하세요.
<code class="cpp">int size = 100; float x[size][2]; // Error</code>
이 예에서는 size는 런타임 값이므로 상수가 아닌 표현식이 됩니다. 따라서 컴파일러는 컴파일 타임에 배열의 크기를 확인할 수 없어 오류가 발생합니다.
해결 방법
이 문제를 해결하려면 다음과 같은 데이터 구조를 사용하세요. std::Vector와 같은 동적 크기 조정을 지원합니다:
<code class="cpp">std::vector<std::array<float, 2>> x(size);</code>
또는 new를 사용하여 배열에 메모리를 할당할 수 있습니다.
<code class="cpp">float (*px)[2] = new float[size][2];</code>
다음에 삭제[] px를 기억하세요 메모리를 확보하려면 사용하세요.
기타 옵션
std::Vector:
위 내용은 질문-답변 쌍 형식의 기사 제목은 다음과 같습니다. **옵션 1(오류에 집중):** * **왜 d시 \'예상 상수 표현식\' 오류가 발생합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!